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 ?
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!