Manuel PHP
Précédent
Suivant
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).
Exemple 1.
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 .";?
Exemple 2.
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é .";}?
Exemple 3.
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";?
Précédent
Sommaire
Suivant
Niveau supérieur