Javascript 在破折号后大写字母并删除破折号
如果您还没有从标题中猜到,我正在尝试使用JS将CSS属性语法转换为JS语法。这意味着我想把输入“marginTop”转换成“marginTop”。我知道只需几行代码和replace函数就可以轻松完成,但我想知道regex是否会有一个更简单、更紧凑的解决方案 所以,我的问题是,我将使用什么正则表达式来替换-\w,而不使用破折号和大写字母。如果这恰好是不可能的,那么使用replace函数最简单的解决方案是什么 谢谢您的帮助。如果您搜索Javascript 在破折号后大写字母并删除破折号,javascript,css,regex,syntax,uppercase,Javascript,Css,Regex,Syntax,Uppercase,如果您还没有从标题中猜到,我正在尝试使用JS将CSS属性语法转换为JS语法。这意味着我想把输入“marginTop”转换成“marginTop”。我知道只需几行代码和replace函数就可以轻松完成,但我想知道regex是否会有一个更简单、更紧凑的解决方案 所以,我的问题是,我将使用什么正则表达式来替换-\w,而不使用破折号和大写字母。如果这恰好是不可能的,那么使用replace函数最简单的解决方案是什么 谢谢您的帮助。如果您搜索camelCase,您将找到以下功能: 'margin-top-s
camelCase
,您将找到以下功能:
'margin-top-something'.replace(/(-.)/g,function(x){return x[1].toUpperCase()})
function camelCase (string) {
return string.replace( /-([a-z])/ig, function( all, letter ) {
return letter.toUpperCase();
});
}
(除此之外,regex和callback是单独定义的)。如果后面有一个数字,则函数无法删除破折号。“this-is-1-test”返回为“this-1Test”。将正则表达式更改为/-([a-z]|[0-9])/ig来修复它,因此我们得到“thisIs1Test”。