Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    69

    espressioni regolari aiuto!

    Salve a tutti,

    ho la necessità di controllare il formato di una stringa del tipo "-0-2-3-4-5-14-1-8-9-20-"

    sto provando con ereg ma evidentemente sto sbagliando qualcosa...

    Qualcuno può indicarmi come fare?

    Sto provando una cosa del genere ma con scarsi risultati..l'espressione regolare sarà sicuramente errata.
    Codice PHP:
    $stringa="-12-10-9-8-7-6-5-4-2-20-";
    if(
    ereg("-[0-20]-{10}",$stringa))

      echo 
    "numeri validi";
    }else{ 
      echo 
    "numeri non validi"

    Ringrazio anticipatamente chi perderà del tempo per rispondermi

  2. #2
    A me così funziona:

    Codice PHP:
    $stringa="-12-10-9-8-7-6-5-4-2-20-"
    $pattern="/^(-{1}[0-9]+)+(-){1}$/"
    echo (
    preg_match($pattern,$stringa)) ? "numeri validi" "numeri non validi" 
    firma in costruzione

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    69
    Originariamente inviato da Ocerusico
    A me così funziona:

    Codice PHP:
    $stringa="-12-10-9-8-7-6-5-4-2-20-"
    $pattern="/^(-{1}[0-9]+)+(-){1}$/"
    echo (
    preg_match($pattern,$stringa)) ? "numeri validi" "numeri non validi" 
    Grazie mille per aver risposto! hai risolto in parte il mio problema

    se volessi che i numeri abbiano un range da 0 a 20?? e che siano massimo 10 numeri?

  4. #4
    Codice PHP:
    $pattern="/^(-{1}[1]?[0-9]{1}){1,10}-{1}$/"
    Impostando così l'espressione regolare la stringa deve avere minimo un numero e massimo 10; i numeri hanno un range che va da 0 a 19. Per un range da 0 a 20 non mi vengono idee :master:
    firma in costruzione

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    69
    maledizione! ci sto sbattendo la testa da un giorno intero!

  6. #6
    codice:
    <?php
    $stringa = "-12-10-9-8-7-6-5-4-2-20-";
    if (preg_match("/^(?:-(?:1?[0-9]|20)){1,10}-$/", $stringa)) {
    	echo "numeri validi";
    } else {
    	echo "numeri non validi";
    }

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    69
    grandeeeeeeeeeeee! funziona! ti ringrazio molto!
    anche se non l'ho capita...

    saresti pure così gentile da spiegarmi?

  8. #8
    Il pattern cerca una sequenza composta da un trattino seguito O da un 1 (opzionale, nel caso di singola cifra) e da un numero compreso tra 0 e 9, OPPURE dal numero 20; tutto questo ripetuto da 1 a 10 volte, con un trattino finale.

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    69
    grazie mille!

    moderatori possiamo chiudere!

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