Salve a tutti!
Devo fars si che tutto quello contenuto fra
<div id=visi style="display:none;">
e il successivo
</div>
Venga eliminato... mi suggerite come?
Salve a tutti!
Devo fars si che tutto quello contenuto fra
<div id=visi style="display:none;">
e il successivo
</div>
Venga eliminato... mi suggerite come?
Guybrush Threepwood
www.gext.it
Ok, la funzione che cercavo è questa... vediamo se capisco bene
Intanto per comodità cambio il <div...> con un codice
Poi creo la funzioneCodice PHP:
$file=str_replace('<div id=visi style="display:none;">','#DIV_INIZIO#',$resume)
$resume=str_replace('</div>','#DIV_FINE#',$file);
Però non ho capito bene cosa inserire nel $search fra il #DIV_INIZIO# e il #DIV_FINE# per dire di considerare tutto l'interno... basta l'asterisco?Codice PHP:
$replace=""; // e qui ci siamo...
$search="#DIV_INIZIO#*#DIV_FINE#";
$file= preg_replace($search, $replace, $file);
Guybrush Threepwood
no... così non va... datemi una mano![]()
Guybrush Threepwood
prova con questo:
Codice PHP:
$nuovotesto = preg_replace('%(<div id=visi style="display:none;">)(.*?)(</div>)%si', '$1$3', $testo);
Mi sono accorto che nel codice che ti ho postato sono stati aggiunti due spazi che non dovrebbero esserci e che non riesco a togliere (?!?)...
gli spazi incriminati sono quelli tra:
<div id=visi style="display:none;"> e )
e tra
</div> e )
toglili tu altrimenti non ti funziona![]()
no, così non me lo fa (però non mi da erroreOriginariamente inviato da yangtze
prova con questo:
Codice PHP:
$nuovotesto = preg_replace('%(<div id=visi style="display:none;">)(.*?)(</div>)%si', '$1$3', $testo);
)
FAcendolo con i codici che dicevo prima, sarebbe corretto questo?
$nuovotesto = preg_replace('%#DIV_INIZIO#)(.*?)(#DIV_FINE#)%si', ', $testo);
Per cosa stanno $1 e $3?
Guybrush Threepwood
A me funziona però probabilmente non hai ancora letto il mio post sugli spazi![]()
Per quanto riguarda $1 e $3:
il primo, cioè $1, crea un riferimento a (<div id=visi style="display:none;">)
il secondo, cioè $3, crea un riferimento a (</div>)
il $2, che qui non vedi, sarebbe la terza incognita, ovvero (.*?), cioè tutto ciò che è compreso tra i due div
Quindi quando scrivo '$1$3' gli dico di lasciare il primo e il terzo blocco mettendo uno spazio vuoto tra i due (per questo $1 e $3 sono attaccati.