我正在尝试在 JavaScript 中开发一个函数,该函数获取一个短语并处理每个单词,保留空格。它会是这样的:
properCase(' hi,everyone just testing') => ' Hi,Everyone Just Testing'
我尝试了几个正则表达式,但找不到只获取单词、应用函数并在不触及空格的情况下替换它们的方法。
我正在尝试
' hi,everyone just testing'.match(/([^\w]*(\w*)[^\w]*)?/g, 'x')
[" hi,", "everyone ", "just ", "testing", ""]
但我不明白为什么这些空间被捕获。我只想捕获 (\w*) 组。还尝试过 /(?:[^\w]*(\w*)[^\w]*)?/g
,结果是一样的...
最佳答案
像这样的东西怎么样
' hi,everyone just testing'.replace(/\b[a-z]/g, function(letter) {
return letter.toUpperCase();
});
如果你想处理每个单词,你可以使用
' hi,everyone just testing'.replace(/\w+/g, function(word) {
// do something with each word like
return word.toUpperCase();
});
关于javascript - 正则表达式替换保留空格的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21519699/