JavaScriptで出現するすべての空白文字(スペース、タブ、改行)を置き換えたい。
その方法は?
私は試した:
str.replace(/ /gi, "X")
\s
は、すべての空白をカバーするメタ文字です。大文字と小文字を区別する必要はありません。空白には大文字と小文字は区別されません。
str.replace(/\s/g, "X")
結合された複数の空白すべてを単一の文字で変更する場合にも、これを使用できます。
str.replace(/\s+/g,'X');
\s
を試しましたか?
str.replace(/\s/g, "X");
これを試して:
str.replace(/\s/gi, "X")
編集(誤字のない正しいバージョン):
str.replace(/\s/g, "X")
使用する場合
str.replace(/\s/g, "");
すべての空白を置き換えます。例えば:
var str = "hello my world";
str.replace(/\s/g, "") //the result will be "hellomyworld"
実際にはうまくいきましたが、
これを試してみてください。
値/\s/gを次のような文字列変数に取ります
String a = /\s/g;
str = str.replaceAll(a,"X");
/ giではなく/ g
var fname = "My Family File.jpg"
fname = fname.replace(/ /g,"_");
console.log(fname);
与える
"My_Family_File.jpg"
私はunderscore.stringの「slugify」メソッドを使用しましたが、それは魅力のように機能しました。
https://github.com/epeli/underscore.string#slugifystring--string
クールなことは、このメソッドを実際にインポートできるだけで、ライブラリ全体をインポートする必要がないことです。