buon pomeriggio,
qualcuno potrebbe dirmi come si indica in un'eswpressione regolare il carattere "?
ho provato ad inserire /",\",("),["], ma continua a darmi errore ..
grazie
buon pomeriggio,
qualcuno potrebbe dirmi come si indica in un'eswpressione regolare il carattere "?
ho provato ad inserire /",\",("),["], ma continua a darmi errore ..
grazie
Nelle regex i caratteri speciali possono essere resi non-speciali (quindi fa il match proprio con quel carattere) usando un backslash. E se la regex la metti in una stringa "letterale" nel sorgente, allora il backslash è a sua volta un carattere speciale, di cui devi fare l'escape con un altro backslash.Originariamente inviato da Mitele
qualcuno potrebbe dirmi come si indica in un'eswpressione regolare il carattere "?
ho provato ad inserire /",\",("),["], ma continua a darmi errore ..
Se vuoi matchare esattamente a.b (a punto b) e non 'a' poi "un qualunque carattere" poi b, la regex è a\.b e se la metti in una stringa literal:
String expr = "a\\.b";
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Ma quindi ( curiosità mia per comprendere ) dovrebbe fare
"\\"" per cercare il carattere "?
Con la prima parte cerchi il literal e all'interno il carattere?
Deduco in quanto il semplice \" non ha funzionato...
Nipote: persona incompetente, con le soli doti di "copia/incolla" e la creazione automatica di siti internet ed interfaccie grafiche.Compie lavori apparentemente qualificati e richiesta una modifica sparisce in quatemala con i pochi soldi ottenuti.[...] Fonte la Diegonzelli
"\\"" comunque è sbagliato, perché il doppio backslash fa mettere nella stringa un singolo backslash ma il " seguente non è quotato.Originariamente inviato da @DI3GO@
Ma quindi ( curiosità mia per comprendere ) dovrebbe fare
"\\"" per cercare il carattere "?
Con la prima parte cerchi il literal e all'interno il carattere?
Deduco in quanto il semplice \" non ha funzionato...
String s = "a\"b";
è corretto e nella stringa ci sono 3 caratteri 'a', apice doppio, 'b'. E questo basterebbe perché nelle espressioni regolari un apice doppio non è speciale!
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ho provato a mettere \" nel mio codice , ma non funziona...non so come far capire a java che si tratti del carattere "
codice:regex="^[a-zA-Z([^a-zA-Z])]*width=\"[12345]\d{2}\"\s[h]eight=((\b"\d{2}"\b)|("[12]\d{2}"))[a-zA-Z([^a-zA-Z])]*[^a-zA-Z]$"
Il problema è qui (in rosso):
In pratica così chiudi le virgolette che delimitano la stringa regex.codice:regex="^[a-zA-Z([^a-zA-Z])]*width=\"[12345]\d{2}\"\s[h]eight=((\b"\d{2}"\b)|("[12]\d{2}"))[a-zA-Z([^a-zA-Z])]*[^a-zA-Z]$"
"Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)
scusami mi sono sbagliato a scrivere , io li chiudo cosi' \" ma resta il fatto che non funziona e sinceramente anch'io mi stupisco