Javascript RegExp : limites des mots et caractères Unicode
Lors de l'utilisation de RegExp de Javascript pour la saisie semi-automatique, la gestion des caractères spéciaux dans des langues comme le finnois devient cruciale. L'approche traditionnelle consistant à faire correspondre les limites des mots (b) ne parvient pas à gérer les caractères tels que ä, ö et å.
Solution : codes Unicode
Pour résoudre ce problème, nous peut exploiter les codes Unicode pour ces caractères spéciaux :
[\u00C4,\u00E4,\u00C5,\u00E5,\u00D6,\u00F6] => äÄåÅöÖ
Groupe non capturant
Au lieu de b, nous pouvons utiliser un groupe non capturant pour faire correspondre le début d'une chaîne ou d'un espace. Cette approche nous permet de faire correspondre plus efficacement les caractères spéciaux :
<code class="javascript">var pattern = "(?:^|\s)" + searchterm;</code>
Répartition :
Exemple :
<code class="javascript">var title = "this is simple string with finnish word tämä on ääkköstesti älkää ihmetelkö"; var searchterm = "äl"; if (new RegExp(pattern, "gi").test(title)) { // Match found }</code>
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!