Bonjour tous,
Voilà je voudrais utiliser preg_match() pour comparer d'une part une array de strings dont les éléments sont composés de la traduction d'un mot en plusieurs langues (reliées par des tirets) , et de l'autre un label dans une langue unique.
Par exemple :
Code :
$myarray = ("Immobilier-Immobilien","Voyages-Reizen","Avis-Berichten" ); $mystring = "immobilier" foreach ($myarray as $item) { if (preg_match("/". $mystring. '/i', $item)) ; // preg_match case insensitive }
|
Cet exemple simplifié de script fonctionne bien et me retourne un "OK!".
Mais voilà, il s'avère que pour une raison inutile d'expliquer ici, les éléments de $myarray sont écris sans caractères accentués.
Or, si je prends comme $mystring la valeur en néerlandais de "immobilier" je tombe sur "immobiliën" avec un e tréma. Evidemment le preg_match ne va plus.
Je suis à la recherche d'une syntaxe pour faire passer tous mes ëêéè pour des e, tous les äá pour des a, etc. mais je sais pas trop comment faire (je suis un total noob en regexp .. )
quelqu'un peut me tuyauter svp ?
Message édité par ZeBix le 25-04-2008 à 18:30:06