概述
一:实现代码:
var camelizeRE = /-(w)/g;
function camelize(str){
return str.replace(camelizeRE,function(_,c){
return c ? c.toUpperCase():'';
})
}
camelize('kkk-zzz-hhh'); kkkZzzHzz;
二: 实现原理:
1.replace方法:
stringObject.replace(regexp/substr,replacement)
参数 | 描述 |
---|---|
regexp/substr | 必需。规定子字符串或要替换的模式的 RegExp 对象。 请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。 |
replacement | 必需。一个字符串值。规定了替换文本或生成替换文本的函数。 |
replace中的第一个参数是正则表达式时,第二个参数可以是一个函数,可以接受多个参数。其中,第一个参数是捕捉到的内容,第二个参数是捕捉到的组匹配(有多少个组匹配,就有多少个对应的参数)。此外,最后还可以添加两个参数,倒数第二个参数是捕捉到的内容在整个字符串中的位置(比如从第五个位置开始),最后一个参数是原字符串。下面是一个网页模板替换的例子。
例:
1.var str = "kkk_yyy_hhh";
字符串匹配没有正则组匹配
str.replace(''_",function(_,a,b,c){
console.log(_,a,b,c) // _ 3 kkk_yyy_hhh undefined
})
2.var str = "kkk_yyy_hhh";
正则匹配 没有正则组匹配
str.replace(/_/g,function(_,a,b,c){
console.log(_,a,b,c) // _ 3 kkk_yyy_hhh undefined _ 7 kkk_yyy_hhh undefined
})
3.var str = "kkk_yyy_hhh";
正则匹配 有正则组匹配
str.replace(/_(w)/g,function(_,a,b,c){
console.log(_,a,b,c) // _y y 3 kkk_yyy_hhh _h h 7 kkk_yyy_hhh
})
查看第三个案例,既然能拿到_y和y两个值就能实现将 “连字符字符串” 转化为 “驼峰命名字符串”
最后
以上就是不安奇异果为你收集整理的将“连字符字符串”转化为驼峰字符串的全部内容,希望文章能够帮你解决将“连字符字符串”转化为驼峰字符串所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复