文字列の一部を置換する

 ある文字列の中の指定した文字列を別の文字列に置き換える方法を見てみましょう。次の関数が用意されています。

■ str_replace関数

 str_replace関数は、対象となる文字列の中で一致した文字列を置換します。

関数名 str_replace
パラメーターリスト
パラメター名 説明
mixed $search 探す値。複数指定したい場合は配列で指定する
mixed $replace 置き換える値、複数指定したい場合は配列で指定する
mixed $subject 置換対象となる文字列
返り値
mixed 置換後の文字列、もしくは配列を返す
str_replace関数の仕様

○ ファイル

 「PregMatchTest.php」ファイルをコピーして、次のPHPファイルをプロジェクトに追加してください。

ファイルの種類 PHPファイル
ファイル名 StrReplaceTest.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを記述してください。

StrReplaceTest.php

  1. <head>
  2. <meta charset="UTF-8">
  3. <title>文字列置換</title>
  4. </head>
  5. <body>
  6. <?php
  7. //ターゲットとなる文字列を用意する
  8. $target = '今日の夕食はカレーライスです。';
  9. //「カレーライス」を焼肉に変更する
  10. $ret = str_replace('カレーライス', '焼肉', $target);
  11. print($ret);
  12. ?>
  13. </body>

○ 実行結果

実行結果
実行結果

○ 解説

 13行目で、「str_replace」関数を使用しています。第1引数に変換対象となる文字列「カレーライス」を、第2引数に変換したい文字列「焼肉」を、第3引数に作業するターゲット文字列を指定します。結果として元々の文字列の「カレーライス」の部分が「焼肉」に置き換えられて戻り、変数retに代入しています。

■ preg_replace関数

 preg_replace関数は、対象となる文字列の中で変換対象を、正規表現を使って探し、一致した文字列を置換します。

関数名 preg_replace
パラメーターリスト
パラメター名 説明
mixed $pattern 探すパターン(正規表現)。複数指定したい場合は配列で指定する
mixed $replacement 置き換える値、複数指定したい場合は配列で指定する
mixed $subject 置換対象となる文字列
返り値
mixed 置換後の文字列、もしくは配列を返す
preg_replace関数の仕様

○ ファイル

 「PregSplitTest.php」ファイルをコピーして、次のPHPファイルをプロジェクトに追加してください。

ファイルの種類 PHPファイル
ファイル名 PregReplaceTest.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを記述してください。

PregReplaceTest.php

  1. <head>
  2. <meta charset="UTF-8">
  3. <title>文字列置換</title>
  4. </head>
  5. <body>
  6. <?php
  7. //ターゲットとなる文字列を用意する
  8. $target = 'ばななs0みかんs2ももs1なしs5すいかs6りんご';
  9. //「¥〇」をカンマに置き換える
  10. $ret = preg_replace("/s[0-9]/", ',', $target);
  11. print($ret);
  12. ?>
  13. </body>

○ 実行結果

実行結果
実行結果

○ 解説

 13行目で、「preg_replace」関数を使用しています。第1引数に変換対象となる正規表現として「s○」を見つけるパターンを、第2引数に変換したい文字列「,」を、第3引数に作業するターゲット文字列を指定します。結果として元々の文字列の中から「s○」の部分が「,」に置き換えられて戻り、変数retに代入しています。

前へ   次へ