PHP には、preg_filter() と preg_replace() という 2 つの正規表現フィルター関数があることはわかっていますが、これらの違いを誰もが知っているわけではありません。今日はそれについて詳しく見ていきたいと思います。
PHP の通常の置換フィルター関数
なんと言うか? 通常の置換フィルター関数は、前に説明した置換関数とよく似ていますが、唯一の点が異なります。ほとんど違いはありません。気づいたかどうかはわかりません!!
==preg_filter()==関数: 正規表現の検索と置換を実行します
通常、preg_filter() 関数は次のとおりです。 preg_replace() 関数と同等
ケース 1 のコードは次のとおりです:
$arr=array('1.jpg','2.txt','3.doc','4.exe','5.php'); $pattern='/\.jpg|\.txt/';$replacement=''; $result1=preg_replace($pattern, $replacement, $arr); $result2=preg_filter($pattern, $replacement, $arr); show($result2);
preg_filter() と preg_replace() の実際の違い
ケース 1 のコード2 は次のとおりです:
$pattern=array( "/\d+/", "/ccc/"); $replacement=array( '1024', 'PHP'); $string=array( '1234aaa', 'abbbccc', 'wampserver'); $result1=preg_replace($pattern, $replacement, $string); show($result1); $result2=preg_filter($pattern, $replacement, $string); show($result2);
したがって、違いは次のとおりです:
preg_filter() は、置換およびフィルタリングされた配列要素と、置換されていない配列要素のみを返します。
preg_replace() は、置換およびフィルタリングされた配列要素を返すだけでなく、置換されなかった要素も保持されて返されます!
実際には、全員がお互いの結果をテストして出力すれば、それらの違いがすぐにわかります!
推奨学習:php ビデオ チュートリアル
以上がPHP の preg_filter() と preg_replace() の違いの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。