Expression régulière

Fermé
sloye - 26 sept. 2020 à 13:54
 sloye - 26 sept. 2020 à 19:10
Bonjour,

J'ai le code suivant qui ne fonctionne pas, avez vous une idée pour le mot évènement qui peut aussi s'écrire événement

<?php
$var = 'un évènement';
if (preg_match('#év[èàùé]nement#', $var))
{
echo 'Vrai' . ' ' . $var;
}
else
{
echo 'Faux';
}
?>

d'avance merci

3 réponses

jordane45 Messages postés 38440 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 février 2025 4 737
26 sept. 2020 à 14:35
Bonjour,

Déjà,
A l'avenir, merci d'utiliser les balises de code
Explications à lire ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Ensuite, au plus simple
$str = "un événement";
$pattern = "/évènement|événement/i";
echo preg_match($pattern, $str);

0
merci pour la réponse mais par exemple si j'utilise zéro ça ne marche pas

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Expression reguliere</title>
       <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   </head>
   <body>
 <?php
   $var = 'un zéro';
   if (preg_match('#z[éè]ro#', $var))
   {
    echo 'Vrai' . ' ' . $var;
   }
   else
   {
    echo 'Faux';
   }
  ?>
   </body>
</html>


d'avance merci
0
Utilisateur anonyme
26 sept. 2020 à 18:18
Bonsoir

remercier Jordane (ou qui que ce soit d'autre qui tente de t'aider) c'est très bien.
Mais ce qui serait bien (mieux?) c'est de lire la réponse qu'il t'a apportée.....

Jordane
https://regex101.com/r/1M9Z8O/1

toi
https://regex101.com/r/1M9Z8O/2
0
jordane45 Messages postés 38440 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 février 2025 4 737
26 sept. 2020 à 18:36
Déjà... zèro .. ça n'existe pas...
Donc c'est forcément zéro

Ensuite... en quoi as tu tenu compte de ma réponse pour ce "nouvel" exemple ??
Visiblement tu as continué dans ta lancée initiale... sans même avoir regardé ma réponse.
0
Bonsoir,
merci Jordan45 pour ton temps
si j'ai bien lu ta réponse mais mon idée de départ c'était dans le cas où l'utilisateur fait une faute d'orthographe

entre temps, j'ai trouvé une solution qui me convient

preg_match('#z.[eéè]ro#', $var)

Merci encore et bon week-end
0