一、camelize
这个方法可以将字符串转成驼峰形式,并且可以将字符串中的/替换成::
将路径转换成命名空间时比较有用。
def camelize
return self.gsub( /\/(.?)/ ) {
"::" + $1.upcase
}.
gsub( /(^|_)(.)/ ) {
$2.upcase
}
end
"active_record".camelize #=> "ActiveRecord"
"active_record/errors".camelize #=> "ActiveRecord::Errors"
二、underscore
这是camelize的逆向转换
将命名空间转换成路径时比较有用。
def underscore
return self.gsub( /::/, '/' ).
gsub( /([A-Z]+)([A-Z][a-z])/, '\1_\2' ).
gsub( /([a-z\d])([A-Z])/ , '\1_\2' ).
tr( "-", "_" ).
downcase
end
"ActiveRecord".underscore #=> "active_record"
"ActiveRecord::Errors".underscore #=> active_record/errors
具体如何将这两个方法加入模块中,可以参考在rails中如何加载自定义方法
分享到:
相关推荐
Xml反序列化扩展string类源码 源码描述: 该源码的目的是为了说明反序列化的Xml数据对象数据驻留在应用程序内存。 详细描述了实现泛型,单一的方法能够序列化多个对象类型 欢迎感兴趣的用户下载研究
写的用于扩展C++中的字符串类的一个类,使用了vs,主要是为字符串操作增加如Java中的那些方法
扩展String功能方法:一直好忙,没有时间写属于自己的东西,但是看着一天天不更新心情也不是个滋味,只有从网上收罗一些比较好的东东贴上。
字符串类扩展String类方法的应用程序
C#扩展string类型方法,查找该字符串中含有另一个字符串的个数
javascript string和array常用扩展方法
asp.net c# String类添加按字节截取字符串的扩展方法
* 扩展基础类 * 得到字符串的长度,包括中文和英文 **/ String.prototype.charlen = function() { var arr = this.match(/[^\x00-\xff]/ig); return this.length + (arr == null ? 0 : arr.length)...
扩展String类或使用设置文本颜色,背景颜色和文本效果的方法添加ColorizedString 。 模式 require 'colorize'扩展String类 require 'colorized_string'添加ColorizedString类 产品特点 更改字符串颜色 更改字符串...
SwiftString, 一个全面的,轻量级的字符串扩展,用于 Swift SwiftString SwiftString是Swift的轻量级字符串扩展。 这个库有助于为常见字符串操作搜索 with,并希望它们在一个地方进行测试覆盖。安装SwiftString可以...
String类使用(创建字符串对象、比较、长度、连接、截取、查找和替换、切割和拆分、和其他类型的转换、格式化、判断、手动入池、其他操作) StringBuffer类 StringBuilder类 String、StringBuffer和StringBuilder的...
es6这个String对象倒是扩展了不少方法,但是很多都是跟字符编码相关,个人选了几个感觉比较常用的方法; includes 搜索字符的神器 还记得我们之前如何判断某个字符串对象是否包含特地字符的吗? var str='google'...
一个又C++实现的字符类重写,是老师留得作业,但是内容充实,可以广泛扩展,同时实现了类的重载,定义,以及组合等内容
StringFormat的使用 扩展: 定义全局变量:网络地址
Stringex 一些实用的Ruby字符串扩展类
一个快速的5.0字符串扩展类,用于处理与表情符号有关的任务。 CocoaPods安装 pod 'StringEmoji', :git => 'https://github.com/piterwilson/StringEmoji.git' 用法 import StringEmoji 文献资料 字符串扩展 var ...
字符串类JavaScript String类的扩展
2、上正文,js扩展String.prototype.format字符串拼接的功能,首先是基础功能的改造: String.prototype.format = function(){ if(arguments.length==0){ return this; } for(var s=this, i=0; i<arguments.
C++程序员编码过程中经常会使用string(wstring)类,你是否思考过它的内部实现细节。比如这个类的迭代器是如何实现的?对象占多少字节的内存空间?内部有没有虚函数?内存是如何分配的?构造和析构的成本有多大?笔者...
STL中string的扩展类string_ex,给出许多扩展的操作字符串的非常使用的成员函数