まず、正規表現における貪欲とは何か、非貪欲とは何かについて少し学びましょう。あるいは、何が優先量指定子と一致し、何が優先量指定子を無視するのでしょうか?
わかりました、概念が何なのかはわかりませんが、例を挙げてみましょう。
ある学生は、コンテンツをフィルタリングしたいと考え、通常のルールと手順をこのように書きました。
$str = preg_replace('%<script>.+?</script>%i','',$str);//非贪婪
何も問題がないように思えますが、実際はそうではありません。
$str = '<script<script>alert(document.cookie)</script>>alert(document.cookie)</script>';
の場合、上記の手順の後、結果は
$str = '<script<script>alert(document.cookie)</script>>alert(document.cookie)</script>'; $str = preg_replace('%<script>.+?</script>%i','',$str);//非贪婪 print_r($str); //$str 输出为 <script>alert(document.cookie)</script>
であり、まだ彼が望む効果を達成できません。上記は貪欲ではなく、怠惰と呼ばれるものもあります。貪欲でないことを示す記号は、+?、*?、?? などの定量的なメタ文字の後に ? を追加することです (さらに特別なことについては、今後のブログで書きます)。つまり、?を書かない場合は貪欲を意味します。例えば
$str = '<script<script>alert(document.cookie)</script>>alert(document.cookie)</script>'; $str = preg_replace('%<script>.+</script>%i','',$str);//非贪婪 print_r($str); //$str 输出为ホットAIツール
Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ
AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。
Undress AI Tool
脱衣画像を無料で
Clothoff.io
AI衣類リムーバー
AI Hentai Generator
AIヘンタイを無料で生成します。
人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)3週間前By尊渡假赌尊渡假赌尊渡假赌R.E.P.O.最高のグラフィック設定3週間前By尊渡假赌尊渡假赌尊渡假赌アサシンのクリードシャドウズ:シーシェルリドルソリューション2週間前ByDDDR.E.P.O.誰も聞こえない場合はオーディオを修正する方法3週間前By尊渡假赌尊渡假赌尊渡假赌WWE 2K25:Myriseのすべてのロックを解除する方法3週間前By尊渡假赌尊渡假赌尊渡假赌ホットツール
SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
SublimeText3 中国語版
中国語版、とても使いやすい
ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
メモ帳++7.3.1
使いやすく無料のコードエディター
SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。
ホットトピック