JavaScriptのreplace()とreplaceAll():文字列置換の全て
JavaScriptでの文字列操作では、特定の文字列を別の文字列に置換することがよくあります。この操作を行うためには、replace()
とreplaceAll()
メソッドが用いられます。
この記事では、これら二つのメソッドの機能、使い方、違いを詳しく解説し、具体的な使用例を通して読者の理解を深めます。
replace(searchFor, replaceWith)メソッドの基本
replace()
メソッドは、文字列内の最初に見つかった一致する部分を新しい文字列で置換します。
引数searchFor
は置換対象の文字列または正規表現を指定し、replaceWith
は置換後の文字列を指定します。
正規表現を使用すると、より複雑なパターンの置換が可能になります。
基本的なreplace()の使用例
以下は、replace()
メソッドを使って特定の文字列を置換する基本的な例です。
ソースコード例
1 2 3 4 |
const str = "Hello, world!"; const replacedStr = str.replace("world", "JavaScript"); console.log(replacedStr); |
出力結果
Hello, JavaScript!
「"world"が"JavaScript"に置き換わったね。簡単だ!」
replaceAll(searchFor, replaceWith)メソッドの基本
replaceAll()
メソッドは、文字列内のすべての一致する部分を新しい文字列で置換します。
このメソッドもreplace()
と同様に、searchFor
引数とreplaceWith
引数を取ります。
replaceAll()
は、文字列全体を対象に置換を行う点がreplace()
と異なります。
基本的なreplaceAll()の使用例
以下は、replaceAll()
メソッドを使って文字列内のすべての一致する部分を置換する例です。
ソースコード例
1 2 3 4 |
const str = "Hello, world! Goodbye, world!"; const replacedStr = str.replaceAll("world", "JavaScript"); console.log(replacedStr); |
出力結果
Hello, JavaScript! Goodbye, JavaScript!
「両方の"world"が"JavaScript"に置き換わったよ。全部変えられるんだね!」
replace()とreplaceAll()の使用例
replace()
とreplaceAll()
は、さまざまなシナリオで活用できます。
例えば、テンプレート文字列の動的な置換や、特定のフォーマットに基づくデータの整形などに使われます。
テンプレート文字列の置換
以下の例では、テンプレート文字列内のプレースホルダーを実際の値で置換しています。
ソースコード例
1 2 3 4 |
const template = "Name: {name}, Age: {age}"; const replacedTemplate = template.replace("{name}", "John").replace("{age}", "30"); console.log(replacedTemplate); |
出力結果
Name: John, Age: 30
「テンプレートの{name}と{age}がそれぞれJohnと30に置き換わったね。これで動的な文字列生成ができるよ!」
特定フォーマットの文字列整形
以下の例では、特定のフォーマットを持つ文字列からデータを抽出し、新しい形式に整形しています。
ソースコード例
1 2 3 4 |
const dataStr = "Name: John, Age: 30, City: New York"; const formattedStr = dataStr.replaceAll(", ", "\n"); console.log(formattedStr); |
出力結果
Name: John
Age: 30
City: New York
「コンマと空白の部分が改行に置き換わって、読みやすくなったね!」
まとめ
JavaScriptのreplace()
とreplaceAll()
メソッドは、文字列内の部分を置換するための強力なツールです。
これらのメソッドを理解し、適切に使用することで、文字列データの分析、操作、整形が容易になります。
最後まで読んで頂き、ありがとうございました。少しでもお役にたてたなら幸いです!