ホームページ  >  記事  >  バックエンド開発  >  文字列内の一部の文字を置換する PHP 方法の紹介_PHP チュートリアル

文字列内の一部の文字を置換する PHP 方法の紹介_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:48:15864ブラウズ

php の文字列を置換するには str_replace 関数を使用します。この関数は正規表現も使用できます。次のエディタでは、文字列内の一部の文字を置換する例、または最初に出現する文字を置換する例を紹介します。

ここで、文字列 A と文字列 B という要件があります。文字列 B には文字列 A が含まれています。文字列 A を使用して、文字列 B 内の A を他の文字列に置き換えるか、削除します。

PHP 関数を使用すると、str_ireplace() と str_replace() でこれを行うことができます。

1. str_ireplace(find,replace,string,count) 関数は、文字列を使用して文字列内の他の文字を置換します (この関数は大文字と小文字を区別しません)。

例:

(パラメータと説明はstr_ireplace()関数と同じです)
コードは次のとおりです コードをコピー

header("Content-Type: text/html; charset=utf-8"); // 中国語の文字化けを防ぐ
$str_1 = '郭gボウルwおたまp洗面器p'; $str_2 = '?パン?'; $str_3 = 'PHP は文字列内の一部の文字列を置き換えます - Guo G ボウル W ひしゃく P 盆地 P';                                                                                 $str = str_ireplace($str_1,$str_2,$str_3); エコー $str; // 出力: PHP は文字列 -?Pan 内の一部の文字列を置き換えます
?>




2. str_replace(find,replace,string,count) 関数は、文字列を使用して文字列内の他の文字を置き換えます (この関数は大文字と小文字を区別します)。

コードは次のとおりです


コードをコピー

header("Content-Type: text/html; charset=utf-8"); // 中国語の文字化けを防ぐ $str_1_s = '郭gボウルwおたまp洗面器p'; $str_1_b = '郭Gボウルwおたまp洗面器P'; $str_2 = '?パン?'; $str_3 = 'PHP は文字列内の一部の文字列を置き換えます - Guo G ボウル W ひしゃく P 盆地 P';                                                $str_s = str_replace($str_1_s,$str_2,$str_3).'

'; $str_b = str_replace($str_1_b,$str_2,$str_3); echo $str_s; // 見つからないため、元の文字列を出力します

echo $str_b; // 正しく置換されました // $str_s 出力: PHP は文字列内の一部の文字列を置き換えます - Guo G ボウル W レードル P 洗面器 P コードは次のとおりです
// $str_b 出力: PHP は文字列 -?Pan 内の一部の文字列を置き換えます

?>




上記は置換されているはずですが、初めて登場する文字だけを置換したい場合はどうすればよいですか

多くの人は、str_replace() 関数の使用を考えて、この関数の使用が私たちが望むものであるかどうかを確認します
str_replace( 混合 $search , 混合 $replace , 混合 $subject [, int &$count ] )
最後のパラメータは置換の総数を返すものであり、置換回数を指定するものではないため、str_replace() を使用するのは無理です。

preg_replace()は実装できますが、正規表現が使われているのが残念

コードをコピー


$str=preg_replace('/abc/','xyz',$str,1); エコー $str;

正規表現を使用しない方法はありますか?はい、次のようにすることができます

コードは次のとおりです コードをコピー

$replace='xyz'; if(($position=strpos($str,$replace))!==false){
$leng=strlen($replace); $str=substr_replace($str,'xyz',$position,$leng); }
エコー $str;


http://www.bkjia.com/PHPjc/632792.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632792.html技術記事 PHP で文字列を置換するときは、str_replace 関数を使用します。この関数は正規表現も使用できます。次のエディタでは、文字列内の一部の文字を置換する方法、または最初の文字を置換する方法を紹介します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。