Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
* javascript, ASCII ed espressioni regolari
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet
Precedente :: Successivo  
Autore Messaggio
Crono
Semidio
Semidio


Registrato: 24/03/05 14:12
Messaggi: 224
Residenza: Trieste

MessaggioInviato: 29 Apr 2011 12:30    Oggetto: * javascript, ASCII ed espressioni regolari Rispondi citando

Sto cercando di creare una espressione regolare per testare se il contenuto di un input contiene solo caratteri ASCII stampabili. Di solito cerco di evitare le espressioni regolari come la peste ma questa volta non posso farne a meno. L'esempio che ho riportato qui sotto sembra funzionare ma vorrei un parere da qualcuno che lavora spesso con le espressioni regolari per sapere se ci sono errori che non ho notato o se si può scrivere in modo migliore.

Codice:
/^[\s\!"#\$%&'\\*\+,-.\/\d\:;<\=>\?@A-Z\[(\\)\]\^_`a-z\{\|\}~]*$/
Top
Profilo Invia messaggio privato
freemind
Supervisor sezione Programmazione
Supervisor sezione Programmazione


Registrato: 04/04/07 20:28
Messaggi: 4643
Residenza: Internet

MessaggioInviato: 29 Apr 2011 15:41    Oggetto: Rispondi citando

Per te il valore è buono se è vuoto oppure formato da spazi, punti esclamativi, virgolette, cancelletti, dollari, percentuali, e commerciali,apici,backslash,asterischi,più,virgole,meno,punti,slash, numeri,due punti, punti e virgola,minore, uguali, maggiori, punti interrogativi,lettere maiuscole e minuscole,quadre,tonde,cappellini,underscore,backquote,graffe e pipe e tildi?

Se sì però tu hai scritto
Codice:
/^[\s\!"#\$%&'\\*\+,-.\/\d\:;<\=>\?@A-Z\[(\\)\]\^_`a-z\{\|\}~]*$/

mentre io toglierei, il meno in mezzo perchè lì viene inteso come operatore di range (esattamente come A-Z) e lo metterei alla fine; al posto del punto userei "\." perchè se no indichi qualunque carattere, la tonda aperta penso che tu volessi indicarla con "\(" e non "(\".
Però dovrei fare una prova e non ho la possibilità ora...
Top
Profilo Invia messaggio privato
Crono
Semidio
Semidio


Registrato: 24/03/05 14:12
Messaggi: 224
Residenza: Trieste

MessaggioInviato: 02 Mag 2011 08:17    Oggetto: Rispondi citando

freemind ha scritto:
Per te il valore è buono se è vuoto oppure formato da spazi, punti esclamativi, virgolette, cancelletti, dollari, percentuali, e commerciali,apici,backslash,asterischi,più,virgole,meno,punti,slash, numeri,due punti, punti e virgola,minore, uguali, maggiori, punti interrogativi,lettere maiuscole e minuscole,quadre,tonde,cappellini,underscore,backquote,graffe e pipe e tildi?


I valori buoni sono tutti i caratteri ASCII stampabili, la tabella la ho trovata su Wikipedia spero che sia corretta.
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 02 Mag 2011 10:43    Oggetto: Rispondi citando

boh, stampabili te ne mancano un casino secondo me. Ad esempio le vocali accentate.
Top
Profilo Invia messaggio privato HomePage
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 02 Mag 2011 10:44    Oggetto: Rispondi citando

comunque magari è più facile verificare che una stringa NON contenga i caratteri che non vuoi... vedi te. (scusate il doppio post, errore...)
Top
Profilo Invia messaggio privato HomePage
mda
Dio maturo
Dio maturo


Registrato: 01/11/06 09:39
Messaggi: 6648
Residenza: Figonia

MessaggioInviato: 07 Mag 2011 01:52    Oggetto: Rispondi citando

SverX ha scritto:
comunque magari è più facile verificare che una stringa NON contenga i caratteri che non vuoi... vedi te.


Quello che penso anch'io! Invece di dire "se contiene passi e altrimenti non passa" un "se contiene non passa altrimenti passa".

Ciao
Top
Profilo Invia messaggio privato HomePage AIM
freemind
Supervisor sezione Programmazione
Supervisor sezione Programmazione


Registrato: 04/04/07 20:28
Messaggi: 4643
Residenza: Internet

MessaggioInviato: 07 Mag 2011 14:41    Oggetto: Rispondi citando

A volte è meglio fare un test in positivo altre in negativo.
Però di norma i validatori verificano che il valore sia in una certa forma e non che non lo sia...
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 11:16
Messaggi: 11568
Residenza: Tokelau

MessaggioInviato: 09 Mag 2011 09:43    Oggetto: Rispondi

se si deve verificare che determinati elementi appartengano o meno ad un set finito, conviene elencare quelli che NON appartengono al richiesto sottoinsieme, se questi sono meno di quelli che appartengono... Rolling Eyes
(nel senso che l'uso delle espressioni regolari in questo caso non è per niente obbligatoria o vantaggiosa, dato che Crono non la usa per verificare un formato. Ed è meglio non usare cannoni per uccidere zanzare, come diceva Confucio (o almeno ho sentito dire così Wink )
Top
Profilo Invia messaggio privato HomePage
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi