javascript - 替換所有空白字元
我想在 JavaScript 中替換所有的空白字符(空格、製表符、換行符)。
該怎麼做?
我試過:
str.replace(/ /gi, "X")
答案#1
你想要 \s
匹配單一的空白字元,包括空格、製表符、換頁符、換行符。
相當於
[ \f\n\r\t\v\u00a0\u1680\0-\a\u2028\u2029\u202f\u205f\u3000\ufeff]
在 Firefox 中以及在 IE 中的 [ \f\n\r\t\v]。
str = str.replace(/\s/g, "X");
答案#2
如果我們想將所有多個連續的空格更改為單個字符,我們也可以使用這個:
str.replace(/\s+/g,'X');
在這裡查看其運作方式:https://regex101.com/r/d9d53G/1
解釋
/
\s+/g
\s+匹配任何空白字元(等同於[\r\n\t\f\v ])+量詞 — 匹配一次到無限次,儘可能多次匹配,必要時回退(貪婪模式)
全域模式旗標
- g 修飾符:global。所有匹配(不要在第一次匹配後返回)
答案#3
\s 是一個涵蓋所有空白字元的元字元。你不需要將它設為不區分大小寫 — 空白字元沒有大小寫。
str.replace(/\s/g, "X")
