L'expression régulière pour valider les nombres ne fonctionnait pas avant mon utilisation
P粉690200856
P粉690200856 2023-09-13 15:00:59
0
1
549

Je souhaite utiliser regex pour valider mes numéros avant de les utiliser, mais cela n'a pas fonctionné.

Je veux que le premier nombre commence par 0, suivi de 2 ou 5, puis 4, et le reste des nombres continue jusqu'à 10chiffres.

<?php
$str = "0241310102";
$pattern = "([0]{1}[2,5]{1}[4]{1}[0-9]{7})";

if(preg_match($pattern, $str)){
echo "YES";
}else{
echo "NO";
}

?>

P粉690200856
P粉690200856

répondre à tous(1)
P粉329425839
  1. Vous devez ancrer le motif au début/fin de la chaîne (^$).
  2. Un seul numéro n'a pas besoin d'être spécifié comme classe de caractères[0]0
  3. À préciser uniquement si le quantificateur est différent de 10{1}0
  4. [2,5]将包括字符类中的逗号→ [25]
$examples = [
    "0241310102",
    "1241310102",
    "0541310102",
    "0551310102",
    "0241"
];
$pattern = '(^0[25]4[0-9]{7}$)';

foreach ($examples as $example) {
    echo $example, ": ";
    if (preg_match($pattern, $example)) {
        echo "YES", "\n";
    } else {
        echo "NO", "\n";
    }
}
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal