Manuel PHP
Précédent |  | Suivant

# ereg

(PHP 3, PHP 4, PHP 5)

ereg -- Expression rationnelle standard

## Description

int ereg ( string pattern, string string [, array &regs] )

> Note : preg_match(), qui utilise la syntaxe des expressions rationnelles compatibles PERL, est une alternative plus rapide de ereg().

ereg() recherche dans la chaîne `string` les séquences de caractères qui correspondent au masque `pattern`, en tenant compte de la casse.

Si au moins une séquence est trouvée (éventuellement dans les parenthèses capturantes de `pattern`), et que la fonction est appelée avec un troisième argument `regs`, les résultats seront enregistrés dans `regs`. `$regs[1]` contiendra la première parenthèse capturante (celle qui commence le plus tôt), `$regs[2]` contiendra la deuxième parenthèse capturante (celle qui commence après la première), et ainsi de suite. `$regs[0]` contient une copie de la chaîne.

> Note : Pour les versions de PHP inférieures ou égales à 4.1.0, `$regs` sera rempli d'exactement dix éléments, même s'il y a plus ou moins de dix parenthèses capturantes. Cela n'a aucun effet sur ereg() pour chercher plus de sous-chaînes. Si aucun résultat n'est trouvé, `$regs` ne sera pas altéré par ereg().

ereg() retourne la longueur de l'occurrence trouvée si une occurrence a été trouvée dans la chaîne `string` et `FALSE` dans le cas contraire ou si une erreur est survenue. Si le paramètre optionnel `regs` n'est pas passé à la fonction ou si la longueur du paramètre `string` vaut `0`, la fonction retournera `1`.

L'exemple suivant prend une date au format ISO (YYYY-MM-DD) et l'affiche sous la forme DD.MM.YYYY :

Exemple 1. Exemple avec ereg()

`<?php if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) { echo "$regs[3].$regs[2].$regs[1]"; } else { echo "Format de date invalide : $date"; } ?>`

Voir aussi eregi(), preg_match(), ereg_replace(), eregi_replace(), strpos() et strstr().

Précédent | Sommaire | Suivant
ereg_replace | Niveau supérieur | eregi_replace