Maison >développement back-end >tutoriel php >Pourquoi `preg_match` génère-t-il une « erreur de délimiteur » et comment puis-je la corriger ?

Pourquoi `preg_match` génère-t-il une « erreur de délimiteur » et comment puis-je la corriger ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-05 15:23:09997parcourir

Why Does `preg_match` Throw a

Erreur de délimiteur dans preg_match

Lors de l'utilisation de la fonction preg_match pour la correspondance de modèles, il est crucial de spécifier un délimiteur pour définir clairement le début et fin du motif. Ne pas le faire peut entraîner l'erreur « Le délimiteur ne doit pas être alphanumérique ou barre oblique inverse ».

Le code fourni, qui vise à extraire la chaîne entre guillemets simples, rencontre cette erreur car le modèle n'a pas de délimiteur. Pour remédier à cela, un délimiteur, tel qu'une barre oblique (/), doit être ajouté.

Code corrigé :

$string1 = "My name is 'Kate' and im fine";
$pattern = "/My name is '(.*)' and im fine/"; // With / as a delimiter
preg_match($pattern, $string1, $matches);
echo $matches[1];

L'ajout des délimiteurs clarifie le modèle et permet une bonne correspondance. La barre oblique sert de marqueur de début et de fin du modèle, renfermant efficacement les critères de correspondance.

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