2015-10-19 141 views

回答

3

您可以使用一个否定的字符类的交替检查字符串的开头:

(^|[^-])([A-Z]) 

regex demo

然后,您可以用$1背大写字母前的部分恢复参考。

这里是展示了如何在这之前没有alreaydy前面有一个连字符大写字母连字符插入演示:

var re = /(^|[^-])([A-Z])/g; 
 
var str = 'dashed-String-With-Uppercase\ncamesCaseString'; 
 
var result = str.replace(re, "$1-$2"); 
 
document.write(result.replace(/\n/g, "<br/>"));

3
[^-]([A-Z]) 

您可以使用它并抓取组。

相关问题