• In diretta da GamesVillage.it
    • News
    • -
    • In Evidenza
    • -
    • Recensioni
    • -
    • RetroGaming
    • -
    • Anteprime
    • -
    • Video
    • -
    • Cinema

Visualizzazione risultati da 1 a 9 di 9

Discussione: Le Espressioni Regolari

Cambio titolo
  1. #1
    fremo di raccapriccio L'avatar di kocam
    Registrato il
    10-02
    Località
    Dove vivi
    Messaggi
    3.463

    Le Espressioni Regolari

    Chi me le spiegherebbe che non ci capisco na cippa...
    sono na cosa tipo [19]@^-
    Sono masto. Gaio chi nega.

  2. #2
    fremo di raccapriccio L'avatar di kocam
    Registrato il
    10-02
    Località
    Dove vivi
    Messaggi
    3.463
    Troppo complicate e tutti niubbi?
    Sono masto. Gaio chi nega.

  3. #3
    (un po' meno) cattivo L'avatar di L33T
    Registrato il
    10-02
    Località
    Ovunque e in nessun luogo
    Messaggi
    3.908
    Per quale linguaggio (o shell) innanzitutto?
    Es ist nichts schrecklicher als eine tätige Unwissenheit.

  4. #4
    fremo di raccapriccio L'avatar di kocam
    Registrato il
    10-02
    Località
    Dove vivi
    Messaggi
    3.463
    credo che siano universali per ogni linguaggio, da php a visual basic.
    Sono masto. Gaio chi nega.

  5. #5
    (un po' meno) cattivo L'avatar di L33T
    Registrato il
    10-02
    Località
    Ovunque e in nessun luogo
    Messaggi
    3.908
    Beh, le implementazioni a volte sono leggermente diverse.

    Comunque, una espressione regolare è una sequenza di caratteri e simboli utilizzata in operazioni di ricerca e di sostituzione.
    Un esempio elementare può essere
    "*.exe" nella ricerca di file.
    In realtà sono abbastanza complesse da non poter essere spiegate in un post: non hai trovato manuali?
    Es ist nichts schrecklicher als eine tätige Unwissenheit.

  6. #6
    fremo di raccapriccio L'avatar di kocam
    Registrato il
    10-02
    Località
    Dove vivi
    Messaggi
    3.463
    Lo sò a che servono le espressioni regolari vorrei solo saperle creare che ne sò.. per esempio per confermare se una data frase è un ip... o un email, ecc...
    Cmq ho trovato manuali, che a dire il vero, non mi hanno aiutato molto.
    Sono masto. Gaio chi nega.

  7. #7
    Ex admin L'avatar di Lex
    Registrato il
    10-02
    Località
    Udine
    Messaggi
    36.677
    Devi fare il parsing della strnga, cercando dei pattern titpici che ti permettano di identificarla, ad esempio, come un url. In rete dovrebbero esserci decine di librerie adatte all'uso.
    You will die, mortal


    Gli interventi di moderazione sono in rosso e grassetto. Chiarimenti a riguardo in privato.
    A causa di limiti di tempo, non risponderò a questioni relative al forum su MSN salvo in casi di reale emergenza. Se avete bisogno di contattarmi, mandatemi un mp.

  8. #8
    [GMC]Kevorkian
    Ospite
    Innanzitutto, un sito: http://www.regular-expressions.info/
    E' piuttosto chiaro e utile - però è in inglese.

    Poi, una precisazione: le regex sono *terribilmente* complesse. Non tanto come sintassi, che si spiega in tre pagine max, quanto come applicazioni e come effetti collaterali - in nessun altro ambito la frase "il computer fa quello che gli dici, non quello che vuoi" è altrettanto vera. Tanto che il libro "Mastering Regular Expressions" della O'Reilly è uno degli acquisti obbligati di tutti i programmatori che devono avere a che fare con testi e/o input degli utenti. Ed è di 484 pagine (la nuova edizione).

    Infine, un paio di esempi (giusto per dire)...

    - un indirizzo email valido soddisfa la seguente espressione (metto a mente, quindi potrebbe non essere perfetta):
    [^@][email protected][^@]+\.[A-Za-z]{2,4}

    Senza fare una spiegazione complessa, vuole dire che la frase deve avere uno o più caratteri diversi da @, poi deve avere @, poi ancora caratteri diversi, poi un punto e da due a quattro caratteri che costituiscono il dominio (tipo .it, .com o .info).
    In realtà, però, è un test molto semplificato, che permetterebbe indirizzi email non validi (per esempio con una virgoletta nello username o nel network). Una volta ho visto un tentativo di creazione di una regexp che permettesse *tutti* e *solo* gli indirizzi davvero validi secondo le regole standard della mail - sono tre righe di espressione...

    - un indirizzo IP, invece, soddisfa quest'altra espressione:
    ([0-9]{1,3}\.){3}\.[0-9]{1,3}

    Che vuole dire: tre gruppi di una, due o tre cifre, separati da un punto, più un quarto gruppo non seguito da punto. Però, anche in questo caso non è proprio giusta - perché potresti mettere un ip come 999.999.999.999, che non è assolutamente valido (ciascuno dei quattro gruppi va da 0 a 255).

    Inzomma, sono un vero macello, però sono davvero potenti e utilissime (se devi fare un certo tipo di lavori). Buon divertimento! =)

  9. #9
    fenomeno L'avatar di Berrik
    Registrato il
    10-02
    Località
    Torino
    Messaggi
    9.654
    Inviato da [GMC]Kevorkian
    Innanzitutto, un sito: http://www.regular-expressions.info/
    E' piuttosto chiaro e utile - però è in inglese.

    Poi, una precisazione: le regex sono *terribilmente* complesse. Non tanto come sintassi, che si spiega in tre pagine max, quanto come applicazioni e come effetti collaterali - in nessun altro ambito la frase "il computer fa quello che gli dici, non quello che vuoi" è altrettanto vera. Tanto che il libro "Mastering Regular Expressions" della O'Reilly è uno degli acquisti obbligati di tutti i programmatori che devono avere a che fare con testi e/o input degli utenti. Ed è di 484 pagine (la nuova edizione).

    Infine, un paio di esempi (giusto per dire)...

    - un indirizzo email valido soddisfa la seguente espressione (metto a mente, quindi potrebbe non essere perfetta):
    [^@][email protected][^@]+\.[A-Za-z]{2,4}

    Senza fare una spiegazione complessa, vuole dire che la frase deve avere uno o più caratteri diversi da @, poi deve avere @, poi ancora caratteri diversi, poi un punto e da due a quattro caratteri che costituiscono il dominio (tipo .it, .com o .info).
    In realtà, però, è un test molto semplificato, che permetterebbe indirizzi email non validi (per esempio con una virgoletta nello username o nel network). Una volta ho visto un tentativo di creazione di una regexp che permettesse *tutti* e *solo* gli indirizzi davvero validi secondo le regole standard della mail - sono tre righe di espressione...

    - un indirizzo IP, invece, soddisfa quest'altra espressione:
    ([0-9]{1,3}\.){3}\.[0-9]{1,3}

    Che vuole dire: tre gruppi di una, due o tre cifre, separati da un punto, più un quarto gruppo non seguito da punto. Però, anche in questo caso non è proprio giusta - perché potresti mettere un ip come 999.999.999.999, che non è assolutamente valido (ciascuno dei quattro gruppi va da 0 a 255).

    Inzomma, sono un vero macello, però sono davvero potenti e utilissime (se devi fare un certo tipo di lavori). Buon divertimento! =)
    Kevo sei un genio
    sleeping all day staying up all night

Regole di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •