Maison >développement back-end >tutoriel php >Pourquoi mon expression régulière PHP génère-t-elle une erreur « Aucun délimiteur de fin » ?

Pourquoi mon expression régulière PHP génère-t-elle une erreur « Aucun délimiteur de fin » ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-16 11:16:11882parcourir

Why Does My PHP Regular Expression Produce a

Comprendre les expressions régulières avec PHP

Pourquoi l'erreur : "Aucun délimiteur de fin" dans l'expression régulière PHP ?

Lorsque vous travaillez avec des expressions régulières en PHP, l'absence du délimiteur de fin peut entraîner des erreurs. Examinons ce problème en détail.

Considérez le code PHP suivant :

$pattern = "^([0-9]+)$";

if (preg_match($pattern, $input))
   echo "yes";
else
   echo "nope";

Si vous exécutez ce code, vous rencontrerez une erreur : "Avertissement : preg_match() [function. preg-match] : Aucun délimiteur de fin '^' trouvé dans."

Solution : Délimiteurs en PHP Regular Expressions

En PHP, chaque expression régulière doit être entourée de délimiteurs. Le délimiteur le plus couramment utilisé est la barre oblique (/). Dans ce cas, en encadrant le modèle entre barres obliques, nous définissons les limites de l'expression régulière :

$numpattern = "/^([0-9]+)$/";

Remarques supplémentaires :

  • Assurez-vous que vous mettez une lettre "O" dans le motif, pas un "o" minuscule (zéro).
  • Si votre seul objectif est la validation, vous pouvez supprimer le groupe de capture et utiliser une expression régulière plus simple : /^d $/.
  • Pour plus d'informations, reportez-vous à la documentation PHP. sur Délimiteurs.

Conclusion :

N'oubliez pas que lors de la création d'expressions régulières en PHP, il est crucial d'inclure des délimiteurs pour éviter de telles erreurs. Avec cette compréhension, vous pouvez créer en toute confiance des modèles complexes pour vos applications PHP.

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