Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    aiuto nell'uso della funzione ereg()

    Salve, dovrei scrivermi una funzione che controlli un determinato testo, per vedere se ci sono consecutivamente 9 o 10 numeri..
    Ho cercato un pò in rete e ho lettto che sarebbe da utilizzare la funzione ereg, ma purtroppo ho trovato esempi per controllare se una stringa aveva un determinato formato.. ho trovato una cosa tipo:

    Codice PHP:
    ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})"$data$regs
    solo che non fa al caso mio.. potrei fare un for che controlla ogni carattere e i 9/10 successivi per vedere se sono tutti numeri, ma mi sembra un lavoraccio inutile, qualcuno di voi conosce una funzione che fa al caso mio oppure sa dirmi qualche script pronto che potrei riaddattare??

    Grazie anticipatamente ^^

  2. #2
    Non usare ereg, fa parte di una serie di funzioni obsolete destinate a sparire.

    Per la verifica che ti serve prova:
    codice:
    if ( preg_match('/\d{9,10}/', $string ) {
        // ...
    }

  3. #3
    ciao, scusa ma mi sono spiegato male.. io devo si fare il controllo, ma devo fare in modo che se viene trovata quella stringa, venga automaticamente eliminata..

    in parole povere, se nel mio testo ci sono 9/10 numeri consecutivi, quei numeri vengono automaticamente tolti, e mi venga restituita la stringa senza quella sequenza di numeri..

    una specie di controllo htmlspecialchars(), che effettua il controllo e restituisce la stringa passata già elaborata..

    non so se esista una funzione così, purtroppo non ho mai avuto a che fare con le stringhe e non so neanche bene cosa cercare con google dato che non so se esiste una funzione del genere ^^

    grazie mille

  4. #4
    sono riuscito a trovare la funzione e adattarla a come mi serve:
    Codice PHP:
    <?php
    $string 
    "Chiama 5551212 o 180055512 o 1234567809";
    preg_match_all("/\d{9,10}/"$string$nstring);

    for (
    $i=0$icount($nstring[0]); $i++) {
        
    $string preg_replace("/".$nstring[0][$i] ."/"""$string);
    }
    echo 
    $string;
    ?>
    questa mostra come output:
    Chiama 5551212 o o

    in questo modo ho tolto tutti i numeri di 9 e 10 cifre e mi sono stampato il testo finale, con tutte le stringhe con i numeri levati ^^

  5. #5
    allora fai direttamente

    codice:
    $string = "Chiama 5551212 o 180055512 o 1234567809";
    $string = preg_replace('/\d{9,10}/', '', $string);
     
    echo $string;

  6. #6
    ecco ancora meglio ^^
    vado sempre a fare le cose complicate

    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.