Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776

    Regex Accettare solo alfanumerici Javascript

    Ciao a tutti,
    sono nuovo del forum!!!


    sto cercando di effettuare una verifica su una stringa in modo che vengano accettati solo caratteri alfanumerici senza spazi:
    tipo:
    Pippo -------------- valido
    Pluto --------------valido
    asjhasjh -------------valido
    agdgdgd_ajhdhjds -------------------non valido
    marco12 ---------------- non valido
    54 -----------------non valido
    $%rerwe -----------non valido
    pippo rossi ---------------non valido

    Vorrei che tutti i caratteri non validi venissero cancellati automaticamente ad esempio
    marco rossi ------------- marcorossi
    robe$rto ------------roberto

    Come posso farlo con le espressioni regolari?

    Grazie,
    Roberto

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    tuaStringa.replace(/[^a-zA-Z]/g,'')

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776
    Ciao,

    FUNZIONA, ti ringrazio tantissimo, proprio quello di cui avevo bisogno!!!

    Ti chiedo una cosa in piu':
    me la spiegeresti brevemente, solo la regex, il metodo replace mi e' chiaro.
    Poi mi consiglieresti una buona guida sulle regex, sono impazzito tutto il giorno senza riuscire a trovare niente di chiaro!!!

    Grazie ancora,
    Roberto

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    sostituisci qualsiasi occorrenza (g) nella stringa di un carattere che non sia (^) tra ([ ]) il range (-) a-z oppure A-Z

    risorse per studiare le regexp non ne ho al momento sotto mano,
    quando mi vengono dubbi consulto un reference tipo questo
    http://www.javascriptkit.com/jsref/regexp.shtml

    ciao

  5. #5
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776
    Originariamente inviato da Xinod
    sostituisci qualsiasi occorrenza (g) nella stringa di un carattere che non sia (^) tra ([ ]) il range (-) a-z oppure A-Z
    Ciao,

    esiste la possibilità di includere nel range accettato tutti i carattatteri utilizzabili in un nome?
    mi spiego meglio:
    se ad esempio faccio:
    miastringa.replace(/[^a-zA-Záéíóúàèìòù]/g,'');
    in questo caso mi accetta tutte le vocali accentate, ma se poi arrivasse uno spagnolo e utilizzasse la 'ñ' non verrebbe accettata.
    Si puo' includere un range come per a-z per non stare ad aggiungere tutti i caratteri possibili nella regola?

    Riguardo la tua spiegazione della regex, il carattere / iniziale e / finale(prima della g), che cosa indicano?

    Grazie ancora,
    Roberto

  7. #7
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    No, non esiste, devi mettere a mano i caratteri strani. Però metti il flag "i" (case Insensitive), così ti basterà inserire la metà dei caratteri (ad esempio "è" varrà sia per "è" che per "È")...

    P.S. I caratteri strani mettili in unicode per evitare problemi. Qui hai un convertitore online: http://0xcc.net/jsescape/

  8. #8
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Prova con questa, che prova ad includere un bel po' di roba...:

    codice:
    tuaStringa.replace(/[^A-Za-z\u00C0-\u017F\u1e00-\u1ef9]/g, "");

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776
    Perfetto grazie!!!

    Mettendo ad esempio:
    (/[^A-Za-z' \u00C0-\u017F\u1e00-\u1ef9]/g, "");
    ho aggiunto l'apostrofo e lo spazio.
    Se volessi aggiungere anche la \ dovrei scrivere:
    (/[^A-Za-z\\\' \u00C0-\u017F\u1e00-\u1ef9]/g, "");

    Ti sei dimenticato di spiegarmi il significato di:
    /
    cosa significano all'inzio e alla fine, prima di g, non risco a capire?


  10. #10
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776
    Originariamente inviato da mxa
    Questa è un'ottima risorsa: https://developer.mozilla.org/en/Jav...ar_Expressions

    Oppure ci sono libri tipo questo: http://shop.oreilly.com/product/9780...80596520694.IP
    Grazie mille!!!!

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.