/ / Regex parole con accenti [chiuso] - php, regex

Parole Regex con accenti [chiuso] - php, regex

Ho questa espressione regolare

b(t[úu]s*)b

E ho queste parole:

tu (lavori) tú (non funziona) tus (funziona) tús (funziona)

Perché non posso abbinare ?

risposte:

3 per risposta № 1

Se la regex non corrisponde, i due caratteri differiscono.

"u with acute" può essere espresso come singolo personaggio ú (U + 00FA) o combinando u (U + 0075) con il combinando accento acuto carattere (U + 0301) che dà un aspetto simile ú.

Devi convertire la stringa di input o includere entrambe le varianti nella tua espressione regolare, vedi http://www.regular-expressions.info/unicode.html per dettagli.


2 per risposta № 2

Perché quell'espressione non corrisponde ?

Quell'espressione non corrisponde perché b non sembra riconoscere ú come un carattere di parola, e quindi fallisce se usato tra caratteri non di parole.

Potresti usare qualcosa come questo, invece:

/(?<!p{L})(t[úu]s*)(?!p{L})/u

p{L} corrisponde a una lettera Unicode.