L'anglais, bien sûr, est une évidence pour regex, car c'est ce qu'il a été développé à l'origine dans / pour: p>
Les expressions régulières peuvent-elles comprendre ce jeu de caractères? P> blockQuote>
français entre dans certains personnages accentués que je ne suis pas sûr comment faire correspondre - c'est-à-dire è et e et e tous deux considérés comme des caractères de mots par regex? p>
Les expressions réglemières autonomes Comprendre CE Jeu de Caractères? P> blockQuote>
Le japonais ne contient pas ce que je sais sous forme de caractères de mots regex pour correspondre contre. P>
正規 表現 は この 文字 を 理解 でき 設定? P> blockQuote>
8 Réponses :
Autant que je sache, il n'y a pas de motif spécifique que vous pouvez utiliser IE [A-ZA-Z] pour correspondre à "è", mais vous pouvez toujours les associer séparément, c'est-à-dire [a-za-zè 正] p>
Évidemment, cela peut rendre votre regexp immense, mais vous pouvez toujours contrôler cela en ajoutant vos chaînes en variables et ne passer que les variables dans les expressions. P>
Il ne s'agit pas de l'expression régulière, mais du cadre qui l'exécute. Java et .net, je pense être très bon dans la manipulation d'unicode. donc "è et e tous les deux considérés comme des caractères de mots par regex" est vrai. P>
Réponse courte: oui fort>. p>
Plus spécifiquement, cela dépend de votre moteur de regex Prise en charge des correspondances Unicode (comme décrit ici ). p>
De tels matchs peuvent compliquer énormément vos expressions régulières, afin que je puisse vous recommander de lire Ce Unicode Tutoriel de regex (notez également que les implémentations Unicode eux-mêmes peuvent être assez en désordre afin que vous bénéficiez également de la lecture de Article sur le fonctionnement intérieur des ensembles de caractères). p>
Notez que Unicode n'est pas le désordre. Ce sont toutes les tentatives qui sont venues avant cela qui rend tout le problème en désordre.
Par définition dans cet article, Unicode ne peut pas être en désordre: les implémentations peuvent être.
Cela dépend de la mise en œuvre et du jeu de caractères. En général, la réponse est "oui", mais cela peut nécessiter une configuration supplémentaire de votre part. P>
en Perl, par exemple, la signification des choses comme \ W est modifiée par les paramètres locaux choisis (utilisez les paramètres régionaux). P>
En règle générale, Regex est plus pour le texte lisible par la machine à grokking que pour le texte lisible par l'homme. Il est à bien des égards une réponse plus générale à l'ensemble du XML avec une chose de regex; Regex est de par sa nature même incapable d'analyser correctement la langue humaine, car la langue est plus complexe que ce que vous utilisez pour analyser. P>
Si vous voulez casser la langue humaine (anglais inclus), vous souhaitez utiliser un outil d'analyse de la langue, voire une AI, pas de simples expressions régulières. P>
Ce Le fil pourrait aider. Il inclut le Cours de caractères Unicode Vous pouvez utiliser dans une regex (par exemple , [Ll] est toutes des lettres minuscules, quelle que soit la langue). P>
Utiliser dans une regex dans quel moteur? Perl? Renforcer? Java?
6.2L V8. Quel autre genre est là?
/ [\ p {latin}] / code> devrait par exemple, inclure l'alphabet latin. Vous pouvez obtenir l'explication complète et la référence ici . P>
C'est un site utile, mais il se concentre sur Perl et des moteurs de regex similaires. Ce n'est pas universel.
Hmm ouais, je ne suis pas sûr de quel moteur utilise le moteur, mais peut-être que c'est utile? Le moteur REGEX PERL est utilisé largement
"[\ p {l}]"
Cette expression régulière contient tous les caractères qui sont
Je trouve aussi cette aide très complète pour différentes langues:
Je pense que cela peut également dépendre fortement de la plate-forme sur laquelle le moteur de regex est en cours d'exécution, avez-vous eu un à l'esprit?
"Regex" ou "expression régulière" est un concept défini pour toute collection de symboles que vous voudrez peut-être appeler un alphabet. En pratique, il existe de nombreux moteurs d'expression réguliers (tous ceux que j'ai vus ajouter d'autres capacités également), dont certains gèrent probablement unicode de certaines saveurs et dont certaines ne sont probablement pas. En bref, il s'agit d'une question dépendante de la plate-forme et d'obtenir une réponse utile que vous devrez nous dire quel moteur Regex vous parlez.