Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Espressione regolare

  1. #1

    Espressione regolare

    Ho creato un'espressione regolare che mi estrae il testo contenuto tra parentesi in una stringa:
    Codice PHP:
    $stringa "prova1 (parentesi1) prova2 (parentesi2)";
    eregi('\([a-z0-9 ]*\)',$string,$risultato); 
    Io vorrei che nell'array $risultato fosse una cos del tipo:

    Array([0] => (parentesi1) , [1] => (parentesi2))


    Invece il risultato è solamente il primo valore cioè:

    Array([0] => (parentesi1))


    Come devo fare per avere tutti i valori nell'array?

    Grazie

  2. #2
    up

  3. #3
    Codice PHP:
    $stringa "prova1 (parentesi1) prova2 (parentesi2)";
    eregi('(\\([a-z0-9 ]*\\))+',$string,$risultato); 

  4. #4
    Questa espressione però mi restituisce 2 volte il testo della prima parentesi

  5. #5
    up

  6. #6
    Ti consiglio di usare una preg_match_all

    Codice PHP:
    preg_match_all'/\([a-z0-9 ]*\)/'$stringa$risultato); 
    Ciao!

  7. #7
    Ok grazie ho usato:
    Codice PHP:
    preg_match_all('(\([a-z0-9 ]*\))'$stringa$risultato); 
    e ora funziona

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.