JavaScript - 文字列を置換(変換)する replace()
JavaScriptで文字列を置換(変換)する場合は、 String.replace()メソッドを使います。
単純な文字列だけでなく、 正規表現を使うこともできるため使用頻度の高いメソッドです。
置換後の文字列に空文字('')を指定すれば、文字列を削除することもできます。
replace()メソッドの構文
str.replce(置換対象の文字列(又は正規表現), 置換後の文字列)
コード例
// 文字列(最初の1つだけを変換)
str = str.replace('a', 'x');
// 正規表現(全てのaをxに変換する)
str = str.replace(/a/g, 'x');
一致する最初の文字列1つだけを置換
次のように文字列'a'と指定した場合は、最初に一致する'a'だけを置換します。 残りの'a'は置換されないので注意が必要です。
。
str = 'abc abc abc';
// 最初の'a'だけを置換
str = str.replace('a', 'x');
console.log(str); // xbc abc abc
一致する全ての文字列を置換
一致する全ての文字列を置換したい場合は正規表現で表し、 「gオプション」を使用します。
str = 'abc abc abc';
str = str.replace(/a/g, 'x');
console.log(str); // xbc xbc xbc
改行を削除
改行を削除したい場合は、正規表現を使い「置換後の文字列」に「空文字」を指定します。
str = 'abc\n' + 'abc\r\n' + 'abc';
str = str.replace(/\r?\n/g, '');
console.log(str); // abcabcabc
「\r?\n」と記述することで、 改行コードが「\r\n」と「\n」のどちらの場合でも置換できるようになります。