使用ES6的箭头函数实现字符串中单词大写的最短实现如下:
'your string'.replace(/\b\w/g, l => l.toUpperCase())
// => 'Your String'
ES5兼容实施:
'your string'.replace(/\b\w/g, function(l){ return l.toUpperCase() })
// => 'Your String'
正则表达式基本上匹配给定字符串中每个单词的第一个字母,并且只将该字母转换为大写:
'ÿöur striñg'.replace(/(^|\s)\S/g, l => l.toUpperCase())
此正则表达式匹配给定字符串中的第一个字母和每个非空格字母,前面有空格,并仅将该字母转换为大写:
在这里可以使用如下/(?:^|\s)\S/g
的非捕获组,尽管我们的正则表达式中的g
标志无论如何都不会在设计上捕获子组.
干杯