`
xu_wccq
  • 浏览: 130859 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

(ruby)String Extensions(字符串、首字母大写,复数单数转换)

    博客分类:
  • ruby
阅读更多
字符串截取,
英文单词单数复数转换(Agile Web Development with Rails [Chapter 15||||||||||||||Active Support[P251])
ruby 代码
  1. string = "Now is the time"
  2. puts string.at(2) #=> "w"
  3. puts string.from(8) #=> "he time"
  4. puts string.to(8) #=> "Now is th"
  5. puts string.first #=> "N"
  6. puts string.first(3) #=> "Now"
  7. puts string.last #=> "e"
  8. puts string.last(4) #=> "time"
  9. puts string.starts_with?("No" ) #=> true
  10. puts string.ends_with?("ME" ) #=> false
  11. count = Hash.new(0)
  12. string.each_char {|ch| count[ch] += 1}
  13. puts count.inspect #=> {" "=>3, "w"=>1, "m"=>1, "N"=>1, "o"=>1,
  14. "e" =>2, "h" =>1, "s" =>1, "t" =>2, "i" =>2}
  15. Active Support adds methods to all strings to support the way Rails itself
  16. converts names from singular to plural, lowercase to mixed case, and so on. A
  17. few of these might be useful in the average application.
  18. "cat".pluralize
  19. puts #=> cats
  20. "cats".pluralize
  21. puts #=> cats
  22. "erratum".pluralize
  23. puts #=> errata
  24. "cats".singularize
  25. puts #=> cat
  26. "errata".singularize
  27. puts #=> erratum
  28. "first_name".humanize
  29. puts #=> "First name"
  30. "now is the time".titleize
  31. puts #=> "Now Is The Time"

ruby 代码
 
  1. =begin  
  2. # delete hash key if it not in `arr_need` and it exists in `arr_del` element  
  3. hash={"previous"=>nil"operateDescription"=>nil"channel_status"=>["E""R""P""Q"], "next"=>nil"lastOperator"=>nil}  
  4. arr_need=['previous','operateDescription','channel_status','next','lastOperator']  # fields have in the hash  
  5. arr_del=['lastOperator','next']  # Don't have in the arr_need  
  6. hash_after=StringArray.hsh_delete_if(hash,arr_need,arr_del)   =>  {"previous"=>nil"operateDescription"=>nil"channel_status"=>["E""R""P""Q"]}  
  7. =end  
  8.   def self.hsh_delete_if(hash,arr_need,arr_del)  
  9.     hash.delete_if do |key,value|  
  10.       !arr_need.include?(key) or arr_del.include?(key)  
  11.     end   
  12.     return hash  
  13.   end  
  14.   
  15. =begin  
  16. # delete array value if it not in `arr_need` and it exists in `arr_del` value  
  17. hash=["previous""operateDescription""channel_status""next""lastOperator"]  
  18. arr_need=['previous','operateDescription','channel_status','next','lastOperator']  # fields have in the hash  
  19. arr_del=['lastOperator','next']  # Don't have in the arr_need  
  20. hash_after=StringArray.arr_delete_if(hash,arr_need,arr_del)   =>  {"previous"=>nil"operateDescription"=>nil"channel_status"=>["E""R""P""Q"]}  
  21. =end  
  22.   def self.arr_delete_if(array,arr_need,arr_del)  
  23.     array.delete_if do |value|  
  24.       !arr_need.include?(value) or arr_del.include?(value)   
  25.     end  
  26.     return array  
  27.   end  
分享到:
评论
2 楼 xu_ch 2009-06-15  
有没有helper?
1 楼 xu_wccq 2007-10-31  
为方法定义别名:

def create
......................
end

alias_method :self_create, :create
alias_method :delegate_create, :create

相关推荐

    string_字符串_

    这里可能会有各种优化技巧,比如使用C++的STL(标准模板库)来提升性能,或者使用SSE(Streaming SIMD Extensions)指令集进行字符串操作的硬件加速。 `XStringUtil.h` 可能是辅助工具类的头文件,包含了静态函数,...

    plus.string:plus.js 的字符串扩展

    Plus.stringString manipulation extensions for Plus.js javascript library._.string.capitalize(str)字符串首字母大写。_.string.capitalize('foo');=> 'Foo'_.string.titleize(str)字符串所有单词大写。_.string...

    c#通用扩展方法,通用转换(日期,泛型,字符串,数值)

    例如,有一个`TryParseToInt(string value)`方法,它可以安全地尝试将字符串转换为整数,返回一个布尔值表示转换是否成功,并通过out参数返回转换后的结果。 这些通用扩展方法对于提升代码的可读性和复用性非常有...

    连接字符串

    在IT领域,数据库连接字符串是实现应用程序与数据库通信的关键组件,它们定义了应用程序如何找到并访问特定的数据库。本文将详细解析几种常见的数据库连接字符串格式,包括ODBC(开放式数据库连接)和OLE DB(对象...

    ruby19.chm

    Although building native Ruby C extensions on Windows has historically been a problem, we believe the combination of our One-Click Ruby Installer, our development tools, and the growing community of ...

    ODBC和OLEDB的连接字符串.docx

    ODBC和OLEDB连接字符串详解 ODBC(Open Database Connectivity)和OLEDB(OLE DB,Object Linking and Embedding Database)是两种常用的数据库连接技术,用于连接各种数据库管理系统。下面我们将详细介绍ODBC和OLE...

    java 代码提示 首字母 提示

    Java代码提示首字母提示是Java开发环境中的一种便捷功能,它极大地提高了程序员的编码效率。当你在编写Java代码时,只需输入方法、类或变量名的首字母,IDE(集成开发环境)就会自动显示出与之匹配的完整标识符列表...

    cpp-fastvalidateutf8用于快速验证utf8字符串使用SIMD指令的头文件库

    `cpp-fastvalidateutf8` 是一个C++库,专门用于高效地验证UTF-8编码的字符串。这个库的独特之处在于它利用了SIMD(Single Instruction Multiple Data)指令,这是一种在现代处理器中广泛采用的技术,可以同时处理多...

    常用类型转换扩展_C#_扩展_类型转换_

    3. **类型转换方法(Type Conversion Methods)**:如`ToString()`,`Parse()`,`TryParse()`,`Convert.ToInt32()`等,用于字符串和其他类型之间的转换。 扩展方法是C#的一个特性,允许我们向已存在的类型添加新...

    C# Extension(扩展方法)

    在这个例子中,我们为字符串类型添加了一个`ToUpperFirst`方法,使得我们可以方便地将字符串的首字母转为大写。 二、使用场景 1. ** LINQ Extensions **:LINQ(Language Integrated Query,语言集成查询)就是...

    Quoted-printable 编码介绍、Quoted-printable编码解码转换方法

    这个函数首先对字符串进行urlencode转换,然后将所有的“%”字符替换为“=”号。随后,如果出现连续超过73个非换行和非等号的字符,就在后面加上一个“=\r\n”。这个简单的实现方法基本上遵循了Quoted-printable编码...

    typing_extensions.py

    例如,`name: Literal['John']`确保`name`变量只能是字符串'John'。 2. **Final**:标记一个类为最终类,防止被继承。这在设计接口或者基础类时非常有用,避免了意外的子类化。 3. **Protocol**:在Python 3.8之前...

    ado连接数据库字符串大全[归类].pdf

    以下是对ADO连接数据库字符串的详细分类和解释: 1. ODBC DSN(Data Source Name)CONNECTIONS: ODBC DSN连接字符串是通过已配置的数据源名称来连接数据库。例如: ``` Driver={SQL Server};Server=...

    Git Extensions中文包.rar

    总结一下,Git Extensions中文包是一个方便中文用户使用的Git图形界面工具,通过简单的汉化步骤,即可将原本的英文界面转换为中文。这不仅降低了使用难度,也提高了工作效率。在进行汉化时,请确保正确备份原文件,...

    WhatsUp:这是一个Google Chrome插件。 当您使用WhatsApp Web时,它将使句子的首字母大写

    当您使用WhatsApp Web时,它将使句子的首字母大写。 使用步骤: 下载此回购并提取 打开谷歌浏览器 打开以下网址chrome:// extensions / 启用开发人员模式 单击LOAD UNPACKED按钮并选择下载的目录 在新标签页中...

    RubyCExtensions

    ### Ruby C Extensions:深入理解与应用 #### 一、引言 在软件开发领域,Ruby 作为一种简洁且功能强大的编程语言,在很多应用场景中都表现出色。然而,在某些高性能计算或系统级编程的需求下,Ruby 可能无法满足...

    Hibernate-extensions 完整安装包

    《Hibernate-Extensions全面指南》 Hibernate,作为Java领域中的一款著名对象关系映射(ORM)框架,极大地简化了数据库操作。然而,为了满足更复杂的业务需求,Hibernate还提供了丰富的扩展功能,这就是我们今天要...

    System.Web.Extensions.dll

    Parser Error Message: Could not load file or assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. 系统找不到指定的文件。 ...

    首字母缩写词解码器:首字母缩写词解码器

    不管是什么,首字母缩写词解码器(AD!)旨在帮助您理解字母汤。 这是一个相当简单的工具,突出显示您具有定义的单词,然后让您通过单击鼠标拉出这些定义。 运行本地服务器 npm install gulp 在Chrome浏览器上...

Global site tag (gtag.js) - Google Analytics