Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    preg_replace problema con quantità (greedy?)

    Sono due giorni che non riesco a risolvere questa cavolata!

    Ho un testo che è il sorgente di una pagina html.
    Devo togliere tutti gli spazi successivi ai caratteri : e ; SOLO all'interno dell'attributo style dei tag.

    Esempio:
    codice:
    olè [img]bla bla bla[/img] come vá?
    Deve diventare;
    codice:
    olè [img]bla bla bla[/img] come vá?
    (non si vedono, ma ho messo appositamente le accentate & egrave; e & aacute; )

    Il problema in particolare è che non riesco a usare correttamente le quantità (mi sostituisce solo la prima occorrenza o l'ultima)

    Come fareste?


    Ciao!
    Originariamente inviato da kalamaro
    una volta avevate linkato la pagina di un software per eliminare i ciao! di debug dai post, ho provato nel mio negozio di fiducia a scaffale non lo hanno, vi ricordate il nome?

  2. #2
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Una cosa del genere va bene?

    Codice PHP:
    if (preg_match('/style="(.*)"/i'$stringa$y))
    {
        echo 
    str_replace(array(': ''; '), array(':'';'), $y[1]);;

    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

  3. #3
    mmm no, perchè posso avere N sostituzioni da fare (e comunque quello non sostituisce, stampa e basta).


    Ciao!
    Originariamente inviato da kalamaro
    una volta avevate linkato la pagina di un software per eliminare i ciao! di debug dai post, ho provato nel mio negozio di fiducia a scaffale non lo hanno, vi ricordate il nome?

  4. #4
    Codice PHP:
    $string 'olè [img]bla bla bla[/img] come vá?';

    $string preg_replace('/style="(.*?)"/e''style_minify("$1")'$string);

    function 
    style_minify($text) {
        return 
    'style="' preg_replace('/([:;]) /''$1'$text) . '"';
    }

    echo 
    $string"\n"

  5. #5
    Grazie!


    Ciao!
    Originariamente inviato da kalamaro
    una volta avevate linkato la pagina di un software per eliminare i ciao! di debug dai post, ho provato nel mio negozio di fiducia a scaffale non lo hanno, vi ricordate il nome?

  6. #6
    Utente di HTML.it L'avatar di Secta
    Registrato dal
    May 2002
    Messaggi
    365
    Originariamente inviato da debug
    mmm no, perchè posso avere N sostituzioni da fare (e comunque quello non sostituisce, stampa e basta).


    Ciao!
    Effettivamente ero stato superficialotto... scusami
    "Dai diamanti non nasce niente, dal letame nascon fiori."
    Fabrizio De Andrè

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.