2015-01-26 17 views

risposta

14

per adattarsi a qualsiasi carattere lettera da qualsiasi uso della lingua:

\p{L} 

Se anche voi volete abbinare i numeri:

[\p{L}\p{Nd}]+ 

\p{L} ... corrisponde a un carattere della lettera categoria unicode.
                                è la forma breve per [\ p {Ll} \ p {Lu} \ p {Lt} \ p {Lm} \ p {Lo} ]
                                    \p{Ll} ... corrisponde a lettere minuscole. (Abc)
                                    \p{Lu} ... soddisfa le lettere maiuscole. (ABC)
                                    \p{Lt} ... corrisponde Titlecase lettere.
                                    \p{Lm} ... partite le lettere di modifica.
                                    \p{Lo} ... partite lettere senza caso. (中文)

\p{Nd} ... corrisponde a un carattere della cifra decimale della categoria unicode.

basta sostituire: ^[a-zA-Z0-9\s]+$ con ^[\p{L}0-9\s]+$

+0

O, se la punteggiatura è OK, la più semplice '\ W' ([carattere di parola] (https://msdn.microsoft.com/en-us/library/20bw873z .aspx # WordCharacter)) può essere usato al posto di '[\ p {L} 0-9]'. – bzlm

+0

grazie mille Andie2302. Funziona alla grande. – user2683269

+0

A proposito di Andie2302, c'è un enorme conflitto di questo con html5 Pattern, stavo ottenendo questo per l'attributo di pattern HTML5 e non è riuscito a convalidarlo. Hai idea di lavorare con Witrh HTML5 Pattern attirbute per tutte le lingue? – user2683269

Problemi correlati