驼峰命名法camelCase和连字符Hyphenate 相互转换
2016-09-11 23:39
351 查看
// 正则方法 function test(str){ var o = /-(\w)/g; return str.replace(o,function(a,b){ // b为子项; return b.toUpperCase() }) } //字符串方法 function test2(str){ var arr = str.split("-"); //[border,left,top] for(var i = 1,len=arr.length;i<len;i++){ arr[i] = arr[i].charAt(0).toUpperCase() +arr[i].substring(1) } return arr.join('') } var a = "border-left-top"; // alert(test(a)) alert(test2(a))
/**
* Hyphenate a camelCase string.
*
* @param {String} str
* @return {String}
*/
转驼峰命名 --参考Vue源码
function hyphenate(str) {
var hyphenateRE = /([a-z\d])([A-Z])/g;
return str.replace(hyphenateRE, '$1-$2').toLowerCase();
}
$1匹配第一个()匹配项,$2匹配第二个()
...关于正则表达式,网上资料一大片,但是很难真正看得下去。推荐一本书:正则表达式必知必会。佷薄的一本书,140页左右。上班时间在地铁上看一周也能看完。由浅入深一步步的吧正则介绍透彻。
下面还有两种(其实是一种)
var a = 'footerBall';
a.replace(/([A-Z])/g,"-$1").toLowerCase();
or
a.replacee(/([A-Z])/g,function(m){
return "-"+m.toLowerCase();
})
相关文章推荐
- 驼峰命名法(CamelCase)和下划线命名法(UnderScoreCase)字符之间的转换
- java中全角半角字符的相互转换
- 数学类型与字符类型相互转换
- 宽字符wchar_t和窄字符char区别和相互转换
- Unicode码和字符间的相互转换
- 字符数组、String类、StringBuffer三者的相互转换
- ASP实现GB2312字符与区位码的相互转换的代码
- mysql日期和字符相互转换方法
- mysql和oracle日期和字符相互转换
- Swift字符与ASCII数值相互转换
- 将char字符转换成int整型,字符串与整型之间的相互转换
- 字符与数字和ASCII码相互转换
- java中字符串 字符数组相互转换
- Java String字符串和Unicode字符相互转换代码(包括混有普通字符的Unicode)
- 中文字符编码的相互转换(三)
- JSON字符与JSON对象的相互转换
- 中文字符ASCII码和NSString相互转换
- mysql日期和字符相互转换
- 宽字符与ANSI字符之间的相互转换
- 整型int和字符数组byte相互转换的源程序