Javascript RegExp Word Limites Caractères Unicode
Question :
Lors de l'utilisation de la RegExp de JavaScript pour la chaîne correspondant dans le texte finlandais avec des caractères spéciaux comme ä, ö et å, la limite de mot b ne parvient pas à correspondre aux mots commençant par ces caractères. Comment ce problème peut-il être résolu pour permettre une correspondance correcte des caractères Unicode ?
Réponse :
Le métacaractère de limite de mot b peut être confronté à des limitations dans la correspondance des caractères Unicode au début de une chaîne. Pour résoudre ce problème :
Replace \b with (?:^|\s)
Répartition :
Exemple :
Le code suivant montre la correspondance de mots finlandais avec des caractères Unicode en utilisant un groupe non capturant au lieu de b :
<code class="js">var title = "this is simple string with finnish word tämä on ääkköstesti älkää ihmetelkö"; var searchterm = "äl"; if (new RegExp("(?:^|\s)" + searchterm, "gi").test(title)) { console.log("Match:", searchterm, title); } else { console.log("Nothing found:", searchterm); }</code>
Cette approche correspond avec succès au terme de recherche "äl" dans la chaîne Unicode "ääkköstesti" car il considère soit le début de la chaîne, soit les espaces comme limite de mot.
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!