16 messaggi dal 27 giugno 2007
Ciao a tutti,
in una pagina aspx ho dei controlli textbox e nel codice VB vorrei controllare il testo inserito dall'utente e verificare che non abbia inserito caratteri "strani" come ad esempio caratteri di punteggiatura o comunque quelli che non gli voglio far inserire (apici, doppi apici, parentesi ecc. ecc.).

per adesso uso la funzione instr(textbox.text, "(") che ripeto per ogni carattere che voglio controllare ma ovviamente non mi sembra per niente elegante. Qualche consiglio ? Oppure mi sfugge qualche altra funzione migliore e più appropriata di quella che utilizzo io ?

Grazie.
Puoi usare una regex.
ne trovi moltre già pronte qui: http://regexlib.com/

Ciauz

imperugo
Microsoft MVP
myblog : http://www.tostring.it
16 messaggi dal 27 giugno 2007
..... mi hai messo in difficoltà. Non sono un esperto e, a parte che ancora non sono riuscito a trovarne una che faccia al caso mio, comunque dubito che poi riuscirei ad utilizzarla. Come si fà ?

Ad esempio, avrei trovato questa: ..........

Title: Test Details Pattern Title
Expression: (?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{6,15})$
Description: I built this expression to test a string in ASP for valid username and password constraints. It can be adapted for any number of scenerios. For instance in this case, we needed to ensure the username someone wanted was not all numbers or all letters and was 6-15 characters in length with no special characters. This expression tests negatively for all number cases, then all letter cases, and lastly tests for only alphanumeric characters in the required range. In other words: the match must be alphanumeric with at least one number, one letter, and be between 6-15 character in length.
Matches: C2dfeed | sporttrak1 | 11223a
Non-Matches: pookie | d34_fff | 123456


.... ma come la utilizzo all'interno di una funzione VB ?
Modificato da allforum il 19 giugno 2009 16.36 -
IMHO questo http://www.regexbuddy.com/ è il miglior tool per le regex e qui: http://www.regular-expressions.info/reference.html trovi la reference che ti server per costruirle.

Ciauz e buon divertimento

imperugo
Microsoft MVP
myblog : http://www.tostring.it
16 messaggi dal 27 giugno 2007
OK, comincio a lavorarci sopra.

Grazie.
16 messaggi dal 27 giugno 2007
 Ok, qualcosa sono riuscito a fare ma proprio non riesco a impostare l'espressione.
Il mio problema sarebbe:
la stringa, di lunghezza compresa fra 4 e 20 caratteri (questa è l'unica cosa che sono riuscito a capire come si fa) NON deve contenere i seguenti caratteri:

,.;:@#°§[]+*^'?=)(/&%$£"!\|<>

In pratica restano solo i numeri, le lettere, il trattino - e underscore _

Mi aiuti per favore ?
Beh, se usi questa

[]\\,.;:@#°§[+*^'?=)(/&%$£"!|<>]

ed hai un match vuol dire che la stringa contiene uno dei caratteri specificati, quindi non va bene. ora devi unirla all'altra parte della regex che hai scritto tu.

Ciauz

imperugo
Microsoft MVP
myblog : http://www.tostring.it

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.