Javascriptの正規表現を使用して、アンダースコアをスペースに置き換えるにはどうすればよいですか?
var ZZZ = "This_is_my_name";
JavaScriptコードの場合は、次のように記述して、ZZZ2
で文字列を変換します。
var ZZZ = "This_is_my_name";
var ZZZ2 = ZZZ.replace(/_/g, " ");
また、正規表現を使用せずに、効率を下げることができますが、ファンキーな方法で行うことができます。
var ZZZ = "This_is_my_name";
var ZZZ2 = ZZZ.split("_").join(" ");
正規表現は、文字列内のテキストを置き換えるツールではなく、文字列内のパターンを検索できますのようなものです。ソリューションを提供するには、プログラミング言語のコンテキストを提供する必要があります。
正規表現_
はアンダースコアに一致しますが、それ以上は一致しません。
たとえば、Groovyでは次のようにします。
"This_is_my_name".replaceAll(/_/," ")
===> This is my name
ただし、これは言語固有のものです(replaceAll
メソッド)。
と置換する " "
実際の実装は言語によって異なります。
Perlでは次のようになります。
s/_/ /g
しかし、真実は、固定文字列を別のものに置き換える場合、正規表現は必要なく、言語/ライブラリの基本的な文字列置換アルゴリズムを使用できることです。
別の可能なPerlソリューションは次のとおりです。
tr/_/ /
var str1="my__st_ri_ng";
var str2=str1.replace(/_/g, ' ');