假设我收到的字符串是这样的:
var string = "example_string"
var otherString = "example_string_two"
我想操纵它输出如下:
string = "exampleString"
otherString = "ExampleStringTwo"
基本上,我想在字符串中找到任何下划线字符并将其删除。如果在下划线后面有一个字母,那么它应该大写。
在正则表达式中有快速的方法吗?
答案 0 :(得分:2)
您可以查找字符串或下划线的开头,并用大写字符替换找到的部分。
var string= 'example_string_two';
console.log(string.replace(/(^|_)./g, s => s.slice(-1).toUpperCase()));

答案 1 :(得分:0)
是的,您可以使用正则表达式方法并简单地替换下划线,我将给您一个示例:
var string = "example_string"
string.replace('_','');
但是你也可以在经典的JS中做到这一点,这在它的自我中非常快 例如:
var string = "example_string"
string.split('_').join('');
如果您正在寻找更多内容,请在下方发表评论。
答案 2 :(得分:0)
像/_([a-zA-Z])/g
这样的正则表达式将在String.prototype.replace中使用正确的回调函数。请参阅下面的代码段。
function camelize (dasherizedStr) {
return dasherizedStr
.replace(/_([a-zA-Z])/g, function (m1, m2) {
return m2.toUpperCase()
});
}
console.log('example_string_foo:', camelize('example_string_foo'));
console.log('foo_Bar:', camelize('foo_Bar'));

答案 3 :(得分:0)
您可以使用javascript替换任何单词,下划线,破折号
这是代码
var str= 'example_string_two';
console.log(var newStr = str.replace("_", " "));
输出: examplestringtwo