M S*_*han 0 javascript function
我正在尝试反转字符串中的单词,而对标点符号没有任何影响。
这是我当前的代码:
function reverse(str) {
str = str.split("").reverse().join("");
str = str.split(" ").reverse().join(" ");
console.log(str)
};
reverse("This is fun, hopefully.")
Run Code Online (Sandbox Code Playgroud)
以上功能的结果是sihT si ,nuf .yllufepoh
在我试图使其像sihT si nuf, yllufepoh.
另一种方法是使用replace和正则表达式将所有字母序列以其反转形式替换,例如
function reverseWords(s) {
return s.replace(/[a-z]+/ig, function(w){return w.split('').reverse().join('')});
}
document.write(reverseWords("This is fun, hopefully.")); // sihT si nuf, yllufepoh. Run Code Online (Sandbox Code Playgroud)
如果您希望将数字包括为单词字符(wg W3C),则正则表达式应为:
/ \ w + / g