Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667

    sti cercando di fare la mia 1a reg exp

    non è la prima volta che uso una reg exp nelle mie pagine,però la avevo sempre trovata già fatta, ora trovandomi nella necessità di dover controllare una stringa volevo farlo x la prima volta da solo


    la strigna dovrebbe esser così:
    XXXXX_XX.XX.XXXX.zip
    (X sono numeri, il numero dei numeri deve essere sempre lo stesso)

    ho inizato,leggendo il tutorial,a scrvier questo:

    nelle mie intezioni,x iniziare,doveva controllare che i ptimi 5 cratteri siano numerici,ma non funziona...dove sbaglio?cosìpoi posso continuare con il resto el controllo sulal stringa

    <script language="javascript">

    var str = "abpp1";

    if(str.match(/\d{,5}/))
    {
    document.write("vero");
    }
    else {
    document.write("falso");
    }
    </script>

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Con la tua RE controlli che nella stringa ci siano almeno una sequenza di numeri (compresi tra 0 e 5).

    Per verificare che INIZI con ESATTAMENTE 5 carqatteri numerici:

    /^\d{5}/

    Per verificare che dopo i 5 ci sia una underscore:
    /^\d{5}\_/

    Non vado oltre, saltrimenti ti tolog il gusto di imparare.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    ti ringrazio!

    con il tuo suggerimento penso si esserci riuscito:

    <script language="javascript">

    var str = "11234_10.01.2000";
    if(str.match(/^\d{5}\_\d{2}.\d{2}.\d{4}/ ))
    {
    document.write("vero");
    }
    else {
    document.write("falso");
    }
    </script>

    ho fatto delle prove e sembra funzionare,ti sembra che ci siano correzioni da fare?

    intanto ti ringrazio, dopo aver fatto la mia prima regular expression senza copiarla da qualcun altro (anche se con un tuo aiuto) per oggi son felice

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Dentro la RE . sta ad indicare qualsiasi carattere (prova a vedere se sostituisci i tuoi . con qualsiasi carattere).

    Per cercare il . devi usare \.

    Inoltre docuemtn.write in quel contesto non va bene. Puoi usare alert() oppure window.status =

    In un browser serio, document.write su una pagina chiusa dovrebbe eliminare la pagina stessa e sostituirla con quanto contenuto nell'argomento.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    per il punto avevi ragione,ho fatto come dici tu e ora va bene:

    <script language="javascript">

    var str = "11234_10.01.2000";

    if(str.match(/^\d{5}\_\d{2}\.\d{2}\.\d{4}/ ))
    {
    document.write("vero");
    }
    else {
    document.write("falso");
    }
    </script>

    x il document.write nessun problema, qui ho scritto così solo x provare la RE, in verità il tutto fa parte di un altro script di controllo di un form dove non uso document.write ma alert().


    Ti ringrazio tanto per l'aiuto...alla prossima RE

  6. #6
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    ok,la prima alal fine era andata,ora sono alla 5,e non mi viene:

    il campo deve essere sempre 5 cifre + C,ad esempio:
    12345C

    /^\d{5}\C$/


    avevo provato così,ma non va...xchè???

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

    la lettera C non è un carattere speciale quindi
    codice:
    /^\d{5}C$/

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    C'e` una backslash di troppo, credo.

    sicuramente \cX ha il significato di control-X (con X una qualsiasi lettera), non so se tale significato e` esteso anceh a \C.

    Prova con:
    /^\d{5}C$/

    PS: http://www.devguru.com/technologies/...ef/regexp.html e il link contenuto "caratteri speciali"

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    esatto!ora va,grazie a tutti!

    piano piano imparo pure io

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.