ホームページ  >  記事  >  バックエンド開発  >  PHP の定期的な置き換え preg_replace_PHP チュートリアル

PHP の定期的な置き換え preg_replace_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-14 10:09:52909ブラウズ

文字列内の特定の文字列を置換する方法について質問があります。例: 文字列内の abc を置換します: abc fdab ertDe fda Abc fdd。abc は大文字と小文字を区別しません。置換後の文字列は次のようになります: fdab ertDe fda fdd

その時、私はすぐに preg_replace と preg_split という 2 つの戦略を思いつきました。残念ながら、当時はマニュアルを持っていなかったので、試す勇気がありませんでした。ここでコードを示します。今後は本当に注意する必要があるようです。コードを書いてみましょう:


[php]
$str = 'abc fdab ertDe fda Abc fdd '; $pat = '/abc/i'; $rtn = preg_replace($pat, '', $str, -1); echo 'orig:', $str, '
'; エコー 'dest:'、$rtn;
$str = 'abc fdab ertDe fda Abc fdd ';
$pat = '/abc/i';
$rtn = preg_replace($pat, '', $str, -1);

echo 'orig:', $str, '
';

echo 'dest:', $rtn; 関数の使用法を表示するには、preg_replace をクリックしてください。もう一度 showshowpreg_split:


[php]
$str = 'abc fdab ertDe fda Abc fdd '; $pat = '/abc/i'; $arr = preg_split($pat, $str); $rtn = implode('', $arr); echo 'orig:', $str, '
'; エコー 'dest:'、$rtn;

$str = 'abc fdab ertDe fda Abc fdd ';
$pat = '/abc/i';
$arr = preg_split($pat, $str);
$rtn = implode('', $arr); echo 'orig:', $str, '
';
エコー 'dest:', $rtn;
はは、この方法は非常に愚かですが、それでも方法ではありますが、最終的にはまだ通常の書き方です。別の方法はありますか? 幸いなことに、私はマニュアルを持っています。別の愚かな方法があります:


【プレーン】 $str = 'abc fdab ertDe fda Abc fdd '; $tran = array('abc' => '', 'Abc' => ''); $rtn = strtr($str, $tran); echo 'orig:', $str, '
'; エコー 'dest:'、$rtn;
$str = 'abc fdab ertDe fda Abc fdd ';
$tran = array('abc' => '', 'Abc' => '');
$rtn = strtr($str, $tran);
echo 'orig:', $str, '
';
エコー 'dest:', $rtn;
この方法は、主に strtr を使用してルールを回避するため、他の人の目的から逸脱しており、良い方法ではありません。


今回は、規則性についていろいろ勉強して書いてきましたが、規則性について考える回です。しかし、使うときにいつもマニュアルを読んで、何度も試したり書き直したりして、よく理解できません。この基本的なスキルを本当に身につけるために、今後はもっと書いて練習する必要があると少し弱気です。





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


www.bkjia.com

tru​​e

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

技術記事

文字列内の特定の文字列を置き換える方法について質問があります。例: 文字列内の abc を置換します: abc fdab ertDe fda Abc fdd。abc は大文字と小文字が区別されません。置換後...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。