[node.js] replace の置換は最初に見つかった1回だけ
こんにちは、@yasuです。
ある文字列から改行を取ろうとしたのですが、うまくできませんでした。
試したコードはこんな感じ。
改行を空白にするコードです。
"aaa\nbbb\nccc".replace("\n", " ")
しかし、この方法だと、
最初の\nは空白に置換されますが、もう一つの\nはそのままになってしまいます。
こんな感じになります。
"aaa bbb\nccc"
また、置換する方法には、もう一つあります。
正規表現です。
"aaa\nbbb\nccc".replace(/\n/, " ")
は、
"aaa\nbbb\nccc".replace("\n", " ")
と同じ置換を行います。
この方法でも、最初にみ見つかった1回だけ置換します。
ただし、正規表現の方法では、オプションがあり、全て置換が可能です。
gオプションです。
このように記述します。
"aaa\nbbb\nccc".replace(/\n/g, " ")
これで、期待通りの動作ができます。
"aaa bbb ccc"