Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Problema pattern

  1. #1
    Utente di HTML.it L'avatar di DanMX
    Registrato dal
    Oct 2003
    Messaggi
    44

    Problema pattern

    Ciao a tutti, ho un problema...

    Sto cercando di fare una funzione che mi metta in un array tutte le stringhe contenute tra due pattern; se, ad esempio, ho la stringa:

    "pippo pluto e paperino vanno al mare"

    e i due pattern sono

    "e" e "vanno"

    la funzione dovrebbe restituirmi "paperino".


    La funzione "explode" funziona con un solo pattern e quindi penso si debba usare la "split", usando come parametro un'espressione regolare.... sbaglio?

    Qualcuno sa consigliarmi come fare?

    Grazie e Buon 2006 a tutti!!

  2. #2
    si devi usare una espressione regolare.

    Esempio veloce che penso funzioni

    <?php
    eregi("e(.+)vanno", "pippo pluto e paperino vanno al mare", $regs);

    print_r($regs);
    ?>

    Ovviamente funziona ma se avessi ancora un e vanno nella frase non funzionerebbe + come vorresti...ma è un semplice esempio per farti intuire la strada.

    Ci sono tanti articoli sulle espressioni regolari


  3. #3
    Utente di HTML.it L'avatar di DanMX
    Registrato dal
    Oct 2003
    Messaggi
    44
    Sì ma se scrivessi:

    $tok = split ('e(.+)vanno', 'pippo pluto e paperino vanno al mare e qui qui qua vanno a pescare');

    foreach ($tok as $personaggio)
    {
    echo $personaggio;
    }



    dovrebbe funzionare, che ne dici?

  4. #4
    Utente di HTML.it L'avatar di DanMX
    Registrato dal
    Oct 2003
    Messaggi
    44
    Ho parzialmente risolto il problema così:


    eregi("e(.+)vanno", "pippo pluto e paperino vanno al mare e qui quo qua vanno a pescare", $regs);

    $n = 1;

    while ($regs[$n])
    {
    echo $regs[$n].'
    ';
    $n = $n+1;
    }


    Il problema è che mi stampa:
    "paperino vanno al mare e qui quo qua"
    invece di:
    "paperino
    qui quo qua"

    Qualche suggerimento?

  5. #5
    Utente di HTML.it L'avatar di DanMX
    Registrato dal
    Oct 2003
    Messaggi
    44

  6. #6
    Utente di HTML.it L'avatar di DanMX
    Registrato dal
    Oct 2003
    Messaggi
    44
    Spero di essere stato abbastanza chiaro...

    Mi servirebbe una funzione che mi metta in un array tutti pezzi di stringa compresi tra due pattern differenti (tra loro) all'interno di una stringa.

    Nel mio caso mi servirebbe per estrarre il nome del file; quando, all'interno di una stringa, viene trovato:

    [img]/Images/prova.jpg[/img]

    dovrebbe essere inserito nell'array:

    prova.jpg

    Grazie...

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.