PHP では、文字列の置換は一般的な操作であり、一致するすべての文字列を置換することが一般的な要件です。この記事では、PHP の replace 関数を使用して、一致するすべての文字列を置換する方法について詳しく説明します。
1. str_replace 関数
PHP で最も一般的に使用される置換関数は str_replace() 関数で、文字列の指定された部分を置換できます。構文は次のとおりです。
string str_replace(mixed $search, mixed $replace, mixed $subject[, int &$count])
このうち、$search は置換対象の文字列、$replace は置換対象の文字列、$subject は元の文字列です。
ただし、str_replace 関数は最初に一致する文字列のみを置換でき、一致するすべての文字列を置換することはできません。以下に例を示します。
$str = "I love PHP, PHP is a good language."; echo str_replace("PHP", "Python", $str); // 输出结果为: I love Python, PHP is a good language.
ご覧のとおり、PHP 文字列の最初に出現した文字列のみが置換され、それ以降の文字列は置換されません。
2. preg_replace 関数
一致するすべての文字列を置換するには、正規表現置換関数 preg_replace() を使用できます。構文は次のとおりです。
string preg_replace(mixed $pattern, mixed $replacement, mixed $subject[, int $limit])
このうち、$pattern は正規表現、$replacement は置換される文字列、$subject は元の文字列です。
preg_replace() 関数は、元の文字列から正規表現に一致する文字列を検索し、指定された文字列に置き換えます。以下に例を示します。
$str = "I love PHP, PHP is a good language."; echo preg_replace("/PHP/", "Python", $str); // 输出结果为: I love Python, Python is a good language.
ご覧のとおり、一致するすべての PHP 文字列が Python に置き換えられています。
複数の文字列を置換する場合は、配列を使用して置換文字列を指定できます。例:
$str = "I love PHP, PHP is a good language."; $search = array("/PHP/", "/good/"); $replace = array("Python", "excellent"); echo preg_replace($search, $replace, $str); // 输出结果为: I love Python, Python is a excellent language.
一致する文字列がすべて置換されたことがわかります。
3. strtr 関数
一致するすべての文字列を置換するもう 1 つの関数は、strtr() 関数です。構文は次のとおりです。
string strtr(string $str, array $replace_pairs)
このうち、$str は元の文字列、$replace_pairs は置換される文字列のペアです。
この関数は、配列で指定された文字列ペアを元の文字列と照合し、対応する値に置き換えます。以下に例を示します。
$str = "I love PHP, PHP is a good language."; $replace_pairs = array("PHP" => "Python", "good" => "excellent"); echo strtr($str, $replace_pairs); // 输出结果为: I love Python, Python is a excellent language.
ご覧のとおり、一致する文字列はすべて置き換えられています。
4. 概要
この記事では、PHP で一致するすべての文字列を置換する 3 つの方法、正規表現置換関数 preg_replace() の使用、文字列置換関数 str_replace() の使用、および正規表現の組み合わせを紹介します。 、文字列置換関数 strtr() を使用します。実際の使用においては、ニーズに応じて適切な方法を選択できます。
これらの関数は、新しい文字列を返すのではなく、元の文字列を直接変更することに注意してください。元の文字列を変更せずに保持する必要がある場合は、まずその文字列を別の変数に割り当てて操作します。
以上がphp すべてを次のように置き換えますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。