Visualizzazione dei risultati da 1 a 8 su 8

Discussione: uso regexp

  1. #1
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691

    uso regexp

    ho trovato (grazie al forum di scripting)
    questo sito, regexlib.com, in cui abbiamo a disposizione una ricca libreria
    di espressioni regolari.

    Come posso utilizzarle in PHP?
    in particolare quella del link postato.

  2. #2

  3. #3
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    Ho dato un'occhiata ma sinceramente non sono molto pratico di
    regexp.
    Io utilizzo php 4.2.0 (easyPHP)
    quindi la libreria PCRE dovrebbe essere inclusa di default.
    Ho provato ad inserire dei caratteri delimitatori della regexp
    ma continua a darmi:
    Parse error: parse error, unexpected '{', expecting ')'

    Può essere che easyphp non include la libreria PCRE oppure che devo
    settare qualche funzione particolare di PCRE?

  4. #4
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    trovato!
    sbagliavo la sintassi.
    Primo avrei dovuto inserire preg_match
    invece che preg
    e poi l'apice prima e dopo il carattere delimitatore.
    Grazie per la dritta.

  5. #5
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    se a qualcuno interessa:
    <?php
    $data="22/12/2003";
    $ciccio=preg_match('/^(???:0?[13578]|1[02])(\/|-|\.)31)\1|(??:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(??:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(???:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(??:16|[2468][048]|[3579][26])00))))$|^(??:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(??:1[6-9]|[2-9]\d)?\d{2})$/' , $data);


    if ($ciccio==true)echo "alleluia";
    else echo " metti una data valida";

    ?>
    La regexp prevede la data in formato mese,giorno,anno
    con diversi caratteri separatori, e tiene conto degli anni bisestili.

  6. #6
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    Scusate:

    se a qualcuno interessa:
    <?php
    $data="22/12/2003";
    $ciccio=preg_match('/^(???:0?[13578]|1[02])(\/|-|\.)31)\1|(??:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(??:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(???:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(??:16|[2468][048]|[3579][26])00))))$|^(??:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(??:1[6-9]|[2-9]\d)?\d{2})$/' , $data);


    if ($ciccio==true)echo "alleluia";
    else echo " metti una data valida";

    ?>
    La regexp prevede la data in formato mese,giorno,anno
    con diversi caratteri separatori, e tiene conto degli anni bisestili.

  7. #7

  8. #8
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    Certo conosco la funct.
    Volevo approciarmi alle regexp, vista la potenza associata al perl.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.