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

    Espressione regolare per convertire &

    Vorrei comvertire tutte le & nella mia pagina lasciando inalterati tutte le altre entità html.
    Ho provato con questo pattern ma questo mi trova le entità html, come faccio a fargli trovare le & che non sono entità.
    Codice PHP:
    preg_replace('/&([a-z0-9#;]{3,})/','&',$text); 
    Oltretutto il ; non credo sia al posto giusto, come potrei scriverla meglio?
    Coltiva Linux, Windows si pianta da solo!

  2. #2
    Hai gia provato con questo?
    Codice PHP:
    preg_replace('/& amp;/','&',$text); 
    PS. senza spazio tra la & e amp;
    OUTSHINE '84

  3. #3
    Originariamente inviato da Outshine84
    Hai gia provato con questo?
    Codice PHP:
    preg_replace('/& amp;/','&',$text); 
    PS. senza spazio tra la & e amp;
    Io vorrei fare il contrario, con tutti gli & che non facciano già parte di un'entità.
    Se ho un testo html così:
    parola1 &_amp; parola2 & parola3 &_egrave;
    La seconda & deve diventare &_amp; mentre le altre devono rimanere come sono.

    P.S. L'underscore va tolto
    Coltiva Linux, Windows si pianta da solo!

  4. #4
    Ah scusa... avevo capito male . Puoi provare :

    Codice PHP:
    preg_replace('/&[^a-z]/','&_amp;',$text); 
    OUTSHINE '84

  5. #5
    Originariamente inviato da Outshine84
    Ah scusa... avevo capito male . Puoi provare :

    Codice PHP:
    preg_replace('/&[^a-z]/','&_amp;',$text); 
    Questo però se dopo & ho uno spazio mi toglie lo spazio e se la & è in una querystring non viene sostituito.
    Coltiva Linux, Windows si pianta da solo!

  6. #6
    così lo spazio risolvi...

    preg_replace('/(&)([^a-z])/','$1amp;$2',$text);

    per gli url puoi usare :

    preg_replace('/\=[a-zA-Z0-9]+(&)([a-zA-Z0-9])/','$1amp;$2',$text);
    OUTSHINE '84

  7. #7
    Originariamente inviato da Outshine84
    così lo spazio risolvi...

    preg_replace('/(&)([^a-z])/','$1amp;$2',$text);

    per gli url puoi usare :

    preg_replace('/\=[a-zA-Z0-9]+(&)([a-zA-Z0-9])/','$1amp;$2',$text);
    Perfetto funziona grazie
    Coltiva Linux, Windows si pianta da solo!

  8. #8
    Quella per gli url l'ho corretta con:
    codice:
    preg_replace('/(\=[a-zA-Z0-9]+)(&)([a-zA-Z0-9])/','$1$2amp;$3',$text);
    perchè tagliava via il valore della variabile prima della &.
    Coltiva Linux, Windows si pianta da solo!

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.