Ho alcune convalide di base per nomi utente che usano espressioni regolari, qualcosa come [\w-_]+
, e voglio aggiungere il supporto per l'alfabeto coreano, mantenendo comunque la stessa validazione.Come posso abbinare i caratteri coreani in un'espressione regolare Ruby?
Non voglio permettere caratteri speciali, come ad esempio {}[][email protected]#$%^&*()
ecc, voglio solo sostituire il \w
con qualcosa che corrisponde a un dato alfabeto in aggiunta a [a-zA-Z0-9]
.
Il che significa che nome utente come 안녕
deve essere valido, ma non 안녕[]
.
Ho bisogno di farlo in Ruby 1.9.
Vedi sotto - dovresti estendere la tua espressione regolare a/[^ a-zA-Z0-9 \ p {Hangul} \ p {Han}]/per catturare anche nomi come 姓. Inoltre, questa regex non supporta ancora i nomi con trattini, come So-Young Kim. – Sprachprofi
La domanda richiede carattere/alfabeto coreano. I nomi coreani con caratteri cinesi sono nuovi per me. Ma l'OP si riferisce ai nomi utente, non ai nomi reali, e suppongo che stia impostando le regole. – steenslag
\ p {Han} è comune in coreano, giapponese e cinese. Quasi tutti i nomi coreani erano scritti in Hanja e sono ancora comuni sui biglietti da visita. Sono meno comuni in rete, ma è sbagliato per le imprese dire alla gente che il nome del passaporto non è un nome valido. Vedi anche http://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/ – Sprachprofi