Unicode RegEx не соответствует иностранным символам - PullRequest
1 голос
/ 07 октября 2019

Все, что я хочу сделать, это разрешить A-Za-z0-9, включая иностранные буквенные символы, такие как ñ, í, ö и т. Д. Я прочитал, что это действительно возможно сделать с флагом Unicode. Отсюда мое выражение:

re = /^[A-Za-z0-9]+$/u

Однако оно не будет совпадать ни с одним из приведенных выше иностранных символов, единственными, которые я проверял. Я подозреваю, что он не будет соответствовать никаким иностранным символам вообще.

Есть ли способ включить все или большинство иностранных символов?

Ответы [ 2 ]

3 голосов
/ 07 октября 2019

Для букв \ p {L} будет соответствовать любому символу Юникода в категории "буква". Обратите внимание, что не очень хорошо поддерживается .

Источник: https://stackoverflow.com/a/3010005

См. Также: https://www.regular -expressions.info / unicode.html

2 голосов
/ 07 октября 2019

Я предполагаю, что, возможно,

^(?:[A-Za-z0-9]|[^\x00-\x7F])+$

или производная от этого могут сработать, если вы хотите иметь совместимость с браузером.

В противном случае,

^[\p{L}]+$

может просто сработать.

Источник

Регулярные выражения Unicode

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...