Originariamente inviato da gm
Prova con preg_match('#"(.+?)"#i', $string)
Grazie, ho provato e rileva il testo correttamenete ma quando lo stampo a video mi aggiunge il carattere \ davanti ai caratteri ". E' un problema di sostituzione di caratteri speciali nelle stringhe PHP passate tramite chiamate GET.

Ti spiego meglio cosa devo fare.
Ho un file html con una form che ha un campo testo e un bottone di submit. Quando inserisco il testo da valutare e premo il bottone, i dati vangono mandati ad un file php contenente la funzione ereg o preg_match che rileva il testo, e restituisce sulla pagina web il testo così come l'ho inserito indicandomi se il rilevamento è andato a buon fine.

Se nella richiesta HTML spedisco la stringa:

ciccio="pluto"

nell'url ho:

http://localhost/nomefile.php?testo=...%3D%22pluto%22

che è corretto ma quando stampo la variabile $_GET[testo] mi scrive nel browser:

ciccio=\"pluto\"

ora, forse sbaglio io, ma \" in PHP è un solo carattere (non 2) scritto in modo tale da far venire fuori solo " all'interno di una stringa racchiusa tra ", allora perchè quando scrivo:

echo $_GET[testo];

mi viene scritto:

ciccio=\"pluto\"

e non:

ciccio="pluto"

?
Se ho questo problema, come modifico l'espressione regolare ?

Grazie infinite
Akito