Maison  >  Article  >  développement back-end  >  Fonctions d'expression régulière étendues POSIX

Fonctions d'expression régulière étendues POSIX

巴扎黑
巴扎黑original
2017-04-25 13:59:262005parcourir

La recherche de chaînes est la principale application des expressions régulières. En PHP, deux fonctions disponibles et utilisées pour correspondre aux expressions régulières de style POSIX sont la fonction ereg() et la fonction eregi().

Fonction ereg() et fonction eregi()

Le format de la syntaxe de la fonction est le suivant :

int ereg(string pattern,string search,array[matches]);

Function function : Cette fonction recherche la chaîne de recherche et trouve une chaîne dans le modèle qui correspond à l'expression régulière. Si des chaînes correspondent aux sous-expressions de pattern, ces chaînes seront stockées dans le tableau matches, chaque élément du tableau correspondant à une sous-expression.

Fonction La fonction eregi() a les mêmes fonctions que la fonction ereg() sauf qu'elle n'est pas sensible à la casse.

Un exemple montre l'utilisation de la fonction ereg() pour vérifier si la variable est légale :

<?php
header("content-type:text/html;charset=utf-8");
$ereg = &#39;^[$][[:alpha:]__][[:alnum:]]*&#39;;
ereg($ereg,&#39;$_name&#39;,$register);
var_dump($register);
?>

Remarque : ereg est obsolète dans la nouvelle version de PHP, remplacé par preg_match().

ereg_replace() et eregi_replace()

Le format de la syntaxe de la fonction est le suivant :

chaîne ereg_replace/ereg_replace (modèle de chaîne, remplacement de chaîne, chaîne de chaîne)

Fonction : faites correspondre le modèle d'expression dans la chaîne de remplacement de caractères Si la correspondance est réussie, utilisez le remplacement pour remplacer la chaîne correspondante et renvoyez la. chaîne remplacée. Si aucune correspondance n'est trouvée dans la chaîne, la chaîne sera renvoyée inchangée. eregi_replace() n'est pas sensible à la casse.

Un exemple montre la modification de toutes les MT non majuscules de la chaîne en MT majuscules :

<?php
header("content-type:text/html;charset=utf-8");
$ereg = &#39;tm&#39;;
$str = &#39;hello ,tm,Tm,tM&#39;;
$rep_str = eregi_replace($ereg,&#39;TM&#39;,$str);
echo $rep_str;

Remarque : dans la nouvelle version, eregi_replace() est remplacé par preg_replace().

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!

Déclaration:
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