Tout d’abord, comprenons ce qui est gourmand en expressions régulières et ce qui ne l’est pas ? Ou qu'est-ce qu'un quantificateur de priorité correspondant et qu'est-ce qu'un quantificateur de priorité ignorant ?
D'accord, je ne sais pas quel est le concept, donnons un exemple.
Un étudiant a voulu filtrer le contenu entre eux. C'est ainsi qu'il a rédigé les règles et procédures habituelles.
$str = preg_replace('%<script>.+?</script>%i','',$str);//非贪婪
Il semble qu'il n'y ait rien de mal, mais en fait ce n'est pas le cas. Si
$str = '<script<script>alert(document.cookie)</script>>alert(document.cookie)</script>';
alors après la procédure ci-dessus, le résultat est
$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>
Toujours incapable d'obtenir l'effet qu'il souhaitait. Ce qui précède n'est pas de la cupidité, et certains sont appelés paresse. Le signe du non-gourmand est d'ajouter ? après le métacaractère quantitatif, comme ?, *?, ?? (plus spécial, j'en parlerai dans le futur BLOG), etc. Autrement dit, cela signifie non gourmand. Si vous n'écrivez pas ?, cela signifie gourmand. Par exemple,
$str = '<script<script>alert(document.cookie)</script>>alert(document.cookie)</script>'; $str = preg_replace('%<script>.+</script>%i','',$str);//非贪婪 print_r($str); //$str 输出为Derniers articles par auteur
1970-01-01 08:00:00 1970-01-01 08:00:00 1970-01-01 08:00:00 1970-01-01 08:00:00 1970-01-01 08:00:00 Python construit des méthodes personnalisées pour embellir la sortie de la structure du dictionnaire1970-01-01 08:00:00 1970-01-01 08:00:00 1970-01-01 08:00:00 1970-01-01 08:00:00 1970-01-01 08:00:00Derniers numérosjavascript - Le code pour modifier l'image de la boîte dans la liste déroulante.Depuis 1970-01-01 08:00:00000Comment ionic2 utilise-t-il les styles d'iOS sur la plateforme AndroidDepuis 1970-01-01 08:00:00000javascript - Existe-t-il un excellent outil de point d'arrêt sur NPM?Depuis 1970-01-01 08:00:00000javascript - Comment Webpack bloque-t-il globalement la valeur de hachage de cette build pour une utilisation par le code JS ?Depuis 1970-01-01 08:00:00000javascript - Comment jQuery implémente-t-il le préchargement des effets sonores sur les pages mobiles?Depuis 1970-01-01 08:00:00000Rubriques connexesPlus>
tutoriel ajax
Le WiFi ne montre aucun accès à Internet
Encyclopédie ChatGPT nationale gratuite
Comment vérifier l'état du serveur
bootmgr est manquant et ne peut pas démarrer
Comment supprimer vos propres œuvres sur TikTok
La différence entre la grande fonction et la fonction maximale
Auto-apprentissage pour débutants en langage C sans fondement