Domanda

NET è possibile utilizzare \p{L} per adattarsi a qualsiasi lettera, come posso fare la stessa cosa in Python? Vale a dire, voglio adattarsi a qualsiasi maiuscole, minuscole, e le lettere accentate.

È stato utile?

Soluzione

modulo re di Python non supporta ancora le proprietà Unicode. Ma si può compilare il regex utilizzando il flag re.UNICODE, e poi la classe di caratteri \w stenografia sarà abbinare le lettere Unicode, anche.

Dal \w sarà anche corrispondere le cifre, è necessario quindi sottrarre quelli dalla classe del personaggio, insieme alla sottolineatura:

[^\W\d_]

corrisponderà qualsiasi lettera 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>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top