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

    preg_match_all estrarre valori tra caratteri

    Ciao ragazzi, sto impazzendo, forse sarà una cosa semplicissima ma vi chiedo un aiuto:

    Ho questa stringa: "CASA / ALBERGO / PALAZZO / TORRE"
    Attraverso l'utilizzo di preg_match_all vorrei estrarre solo CASA, ALBGERGO, PALAZZO, TORRE richiamabili tramite l'array ma non riesco a trovare la sintassi giusta.

    Qualcuno può aiutarmi?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    Prova così:

    Codice PHP:
    $stringa "CASA / ALBERGO / PALAZZO / TORRE";
    preg_match_all('/\w+/'$stringa$risultato);
    echo 
    $risultato[0][0];
    echo 
    $risultato[0][1]; 

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    110
    Grazie mariox ma non funge

  4. #4
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    cosa non va?

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    110
    Nom mi restituisce alcun risultato.

  6. #6
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Il pattern di mariox è corretto, solo che il forum si è pappato una backslash... quindi sostituisci '/w+/' con '/\w+/'. Ma ti faccio notare che questa soluzione non va bene se ad esempio al posto di CASA hai CASA DI CAMPAGNA. Prova cosi:

    Codice PHP:
    // ma dovrai usare trim per rimuovere gli spazi
    $risultato explode('/'$stringa);
        
    // oppure usa questa e risolvi subito
    $risultato array_map('trim'explode('/'$stringa)); 
    P.S: se sei sicuro che la stringa abbia un solo spazio attorno alle backslash puoi usare la prima soluzione e sostituire '/' con ' / '.
    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    110
    Vi ringrazio di cuore, stavo impazzendo, sembra che vada.
    Se ho problemi vi farò sapere

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    110
    Piccolo problemuccio, se mettiamo il caso la stringa è questa "CA-SA / ALBER-GO / PALA-ZZO / TOR-RE" la funzione restituisce i seguenti array:

    1 CA
    2 SA
    3 ALBER
    4 GO

    etc etch

    come mai?

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    110
    Nessuno può aiutarmi ragazzi? 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 © 2025 vBulletin Solutions, Inc. All rights reserved.