Il "+" significa "almeno un'occorrenza", mentre l'asterisco significa "zero o più occorrenze".
La RegEx che hai scritto per il nome (patNomi) pretende che vi sia almeno un carattere che non sia fra quelli elencati... ma almeno un carattere ( + ).
Io proverei con questa:
Una RegEx composta da due sotto-espressioni in alternativa tra di lorocodice:Pattern patNomi = Pattern.compile("\\w*|(\\w+ \\w+)*");
qualunque carattere non whitespace zero o più volte (qui accetto anche la stringa vuota)codice:\w*
oppure
almeno un carattere non whitespace seguito dallo spazio, seguito a sua volta da almeno un carattere non whitespace. L'intera sequenza può essere ripetuta più volte (così riesco ad intercettare anche i cognomi doppi: De Rossi Daniele).codice:(\w+ \w+)*
Ciao.![]()



Rispondi quotando