Maison > développement back-end > tutoriel php > Comment puis-je convertir efficacement les expressions régulières ereg en preg en PHP ?

Comment puis-je convertir efficacement les expressions régulières ereg en preg en PHP ?

Susan Sarandon
Libérer: 2025-01-03 22:19:40
original
347 Les gens l'ont consulté

How Can I Effectively Convert ereg Regular Expressions to preg in PHP?

Conversion des expressions régulières ereg en preg en PHP

Comme PHP 5.3.0 rend obsolète les expressions régulières POSIX (ereg), la conversion des anciennes expressions ereg en PCRE (Perl Compatible Regular Expressions) (preg) devient indispensable. Cet article fournit un guide simplifié pour faciliter cette transition.

Contrairement à ereg, preg nécessite des délimiteurs aux deux extrémités de l'expression régulière. Les délimiteurs couramment utilisés incluent ~, / et #. Par exemple, l'expression ereg "^hello world" peut être convertie en preg_match("/^hello world/") en la plaçant entre des barres obliques.

Les parenthèses correspondantes peuvent également servir de délimiteurs, permettant des variations telles que 1, (^bonjour) et {^bonjour}. Cependant, les délimiteurs inclus dans l'expression doivent être échappés à l'aide d'une barre oblique inverse. Exemple : ereg("^/hello", $str) devient preg_match('/^/hello/', $str).

la fonction preg_quote s'avère utile pour échapper aux délimiteurs et aux caractères réservés dans une chaîne. Exemple : $expr = preg_quote('/hello', '/'); preg_match('/^'.$expr.'/', $str).

PCRE prend en charge des modificateurs comme i (insensible à la casse), équivalent à eregi. Exemple : eregi('^hello', 'HELLO') peut être remplacé par preg_match('/^hello/i', 'HELLO').

Pour des références détaillées sur la syntaxe PCRE et des conseils de conversion ereg-PCRE, consultez le manuel PHP.

Dans certains cas, les expressions régulières peuvent ne pas être nécessaires. Pour l'exemple fourni (eregi('^hello world')), une comparaison simplifiée utilisant stripos($str, 'hello world') === 0 peut suffire.


  1. Bonjour

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal