Вопрос

В .net вы можете использовать \p{L} Чтобы соответствовать любому письму, как я могу сделать то же самое в Python? А именно, я хочу сопоставить любые прописные, строчные и акцентированные буквы.

Это было полезно?

Решение

Питон re Модуль еще не поддерживает свойства Unicode. Но вы можете скомпилировать свою корпорацию, используя re.UNICODE флаг, а затем сокращение класса персонажей \w Сопоставят буквы Unicode.

С \w Также будет соответствовать цифрам, вам нужно вычесть те из класса персонажа, а также подчеркивание:

[^\W\d_]

будет соответствовать любой букве Unicode.

>>> import re
>>> r = re.compile(r'[^\W\d_]', re.U)
>>> r.match('x')
<_sre.SRE_Match object at 0x0000000001DBCF38>
>>> r.match(u'é')
<_sre.SRE_Match object at 0x0000000002253030>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top