Visualizzazione dei risultati da 1 a 7 su 7

Discussione: funzione verifica mail

  1. #1

    funzione verifica mail

    Ciao

    codice:
    function checkemail2(modulo,mail){
    var str=document.forms[modulo].elements[mail].value
    var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
    if (filter.test(str))
    testresults=true
    else{
    testresults=false
    }
    return (testresults)
    }
    uso questa funzione per verificare il formato delle mail e la trovo ottima.

    Vorrei usarla anche per il campo password consentendo solo lettere o numeri però non capisco bene come funzioni la variabile filter.
    Ho fatto:

    codice:
    function checkpass(modulo,campo){
    	var str=document.forms[modulo].elements[campo].value;
    	var filter=/^([\w-]+(?:\.[\w-]+)*)$/i
    	if (filter.test(str))
    		testresults=true
    	else{
    		testresults=false
    	}
    	return (testresults)
    }
    però non impedisce l'uso del punto
    se volessi solo lettere o numeri come dovrei modificare la var filter?

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao lucavizzi,

    la tua variabile filter è una regular expression.
    Se vuoi solo lettere dell'alfabeto e numeri (almeno un carattere)
    codice:
    var filter=/^[a-z0-9]+$/i

  3. #3
    accetta anche le maiuscole?
    mi spieghi un po come funziona?

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    sì, accetta anche le maiuscole perché c'è la i finale che indica IgnoreCase
    ti posso spiegare il pattern
    codice:
    /^[a-z0-9]+$/i
    in javascript la regular expressions definita in questo modo comincia con / e finisce con /
    dopo l'ultima / puoi mettere i=IgnorCase e/o g=Global
    il vero e proprio pattern è quello che c'è in mezzo
    ^ = inizio stringa
    a-z = i caratteri alfabetici dalla a alla z
    0-9 = i caratteri numerici da 0 a 9
    racchiusi da parentesi quadre vuol dire "uno qualunque dei caratteri"
    quindi
    [a-z0-9] = un qualunque carattere alfabetico o numerico
    + = uno o più caratteri di quello che lo precede (quindi uno o più di [a-z0-9])
    $ = fine della stringa

    per la sintassi delle regular expressions puoi guardare qua
    per le referenze dell'oggetto RegExp in javascript puoi guardare qua

  5. #5

    Javascript solo numeri, solo lettere

    grazie WilliBit
    ultima domanda
    se ad esempio volessi aggiungere il punto?

    cioè [az-09] più il punto?

  6. #6
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367

    Re: Javascript solo numeri, solo lettere

    Originariamente inviato da lucavizzi
    grazie WilliBit
    ultima domanda
    se ad esempio volessi aggiungere il punto?

    cioè [az-09] più il punto?
    quella che hai scritto tu vuol dire qualunque carattere compreso tra "a","z","-","0","9"
    se vuoi tutti i caratteri alfanumerici è
    codice:
    [a-z0-9]
    il punto nelle regular expression è un carattere speciale. Per rappresentare un carattere speciale devi anteporre una backslash quindi
    codice:
    [a-z0-9\.]

  7. #7
    danchescien

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.