SommaireTelecharger la documentationChapitre suivantChapitre precedent  

  .: News :.: Edito :.: Scripts :.: Forum :.: Erreurs :.: Jobs :. 
 
Sommaire

Expressions régulières compatibles Perl

preg_match
preg_match_all
preg_replace
preg_replace_callback
preg_split
preg_quote
preg_grep
options de recherche
syntaxe des masques

6.85.1 preg_match

[ Exemples avec preg_match ]   PHP 3>= 3.0.9, PHP 4 >= 4.0.0

Description

int preg_match(string pattern ,string subject ,[array matches ])

preg_match analyse subject pour trouver l'expression pattern.

Si matches est fourni, il sera rempli par les résultats de la recherche. $matches[0] contiendra le texte qui satisfait le masque complet, $matches[1] contiendra le texte qui satisfait la première parenthèse capturante, etc..

preg_match retourne TRUE si la recherche réussit, et FALSE sinon (notamment en cas d'erreur).

Extraction d'un numéro de page d'une chaîne.

<?php
if (preg_match("/page\s+#(\d+)/i""Aller à la page numéro 9."$parts))
    print 
"La page suivante est $parts[1]";
else
    print 
"Page introuvable.";
?>
Trouve le mot "web"

<?php
// \b, dans le masque, indique une limite de mot, de façon à ce que le mot
// "web" uniquement soit repéré, et pas seulement des parties de mots comme
// dans "webbing" ou "cobweb"
if (preg_match ("/\bweb\b/i""PHP est le meilleur langage de script du web.")) {
    print 
"Un mot a été trouvé.";
} else {
    print 
"Un mot n'a pas été trouvé.";
}
if (
preg_match ("/\bweb\b/i""PHP est le meilleur langage de script pour les webagency.")) {
     print 
"Un mot a été trouvé.";
} else {
    print 
"Un mot n'a pas été trouvé.";
}
?>
Lire un nom de domaine dans une URL

<?php
// repérer le nom de l'hôte dans l'URL
preg_match("/^(http:\/\/)?([^\/]+)/i",
"http://www.php.net/index.html"$matches);
$host $matches[2];
// repérer les deux derniers segments du nom de l'hôte
preg_match("/[^\.\/]+\.[^\.\/]+$/",$host,$matches);
echo 
"Le nom de domaine est : ".$matches[0]."\n";
?>
Cet exemple va afficher :
Le nom de domaine est : php.net
Voir aussi preg_match_all, preg_replace et preg_split.


Chapitre précédentChapitre suivantAccueil nexen.net