Visualizzazione risultati 1 fino 7 di 7

Discussione: problema espressioni regolari

  1. #1
    asgl non è connesso Utente
    Data registrazione
    02-05-2003
    Residenza
    Vicenza Provincia
    Messaggi
    227

    Predefinito problema espressioni regolari

    ciao a tutti!
    il mio problema è questo:
    ho una variabile (chiamiamola $variabile) che contiene qualcosa tipo:
    Codice HTML:
    ecco il messaggio: {MESSAGE}<br>
    <!-- START BLOCK 1 -->
    ripetizione numero {N}<br>
    <!-- END BLOCK 1 -->
    io avrei bisogno di isolare la parte di html compresa tra " <!-- START BLOCK 1 --> " e " <!-- END BLOCK 1 --> " usando le espressioni regolari.
    in questo campo, però, non sono per niente esperto e quello che ho abbozzato, cioè
    Codice PHP:
    $variabile = preg_replace("/<!-- START BLOCK 1 -->(.*?)<!-- END BLOCK 1 -->/i","\\1",$variabile);
    non va e mi restituisce tutto il file originale.
    come devo fare perchè funzioni?
    grazie

  2. #2
    Guest

    Predefinito

    $variabile = ereg_replace("<!-- START BLOCK 1 -->(.*)<!-- END BLOCK 1 -->","\\1",$variabile);

    Provalo, dovrebbe andare (non l'ho testato).


    Ciaooooooo!!!!!!!!

  3. #3
    L'avatar di mythologia
    mythologia non è connesso Moderatore
    Data registrazione
    05-01-2004
    Messaggi
    2,614

  4. #4
    asgl non è connesso Utente
    Data registrazione
    02-05-2003
    Residenza
    Vicenza Provincia
    Messaggi
    227

    Predefinito

    debug, grazie, ma l'avevo già provato e non va.
    mythologia, la variabile da cui si ottengono i dati è il contenuto di un file. questo, però, non ha nessuna influenza

  5. #5
    asgl non è connesso Utente
    Data registrazione
    02-05-2003
    Residenza
    Vicenza Provincia
    Messaggi
    227

    Predefinito

    ho riprovato il codice,ma funziona solo in parte.
    infatti io devo prima estrarre i dati da una variabile e poi reimmetterli (logicamente subiscono un "processo" prima di essere reimmessi)
    ecco il codice: (presupponiamo che variabile contenga il codice sopra riportato)
    Codice PHP:
    $variabile1 = ereg_replace("<!-- START BLOCK 1-->(.*)<!-- END BLOCK 1 -->","\\1",$variabile);
    //qui il codice di $variabile1 viene "lavorato"
    $variabile = ereg_replace("<!-- START BLOCK 1-->(.*)<!-- END BLOCK 1 -->",$variabile1,$variabile);
    per reinseire i dati, funziona a perfezione, ma quando li tolgo, mi restituisce tutta la variabile e non solo quello compreso tra i due tag
    come mai?
    Ultima modifica di asgl : 14-12-2004 alle ore 20.15.16

  6. #6
    Guest

    Predefinito

    Ma.... l'ultimo argomento nella seconda porzione non è previsto!!!!!!! :O

    Non ho capito poi cosa tenti di fare....


    Ciaooooo!!!!!!

  7. #7
    asgl non è connesso Utente
    Data registrazione
    02-05-2003
    Residenza
    Vicenza Provincia
    Messaggi
    227

    Predefinito

    prima devo estrarre i valori e poi reimmetterli (togliendo pure i commenti).
    quello che mi hai dato funziona benissimo per reimmetterli(3^ riga del codice), ma non per estrarli (1^ riga)

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •