espressione RegEx a sostituire il testo all'interno dei tag
-
10-10-2019 - |
Domanda
Ho codice HTML come variabile String in Coldfusion.
Ad esempio:
<cfset str = "<span class='xyz'> sample text within span </span>" >
Ora voglio repalce l'arco parola dal testo "testo di esempio all'interno span", ma non il nome del tag.
Può qualcuno aiutarlo?
Grazie in anticipo.
Soluzione 2
I habe cambiato il mio codice come questo e sembra funzionare, ma come efficiente è non lo so Qualcuno può controllare?
<cfset htmlcontents = ReReplaceNoCase(htmlcontents, "(>[^<]*?)(#Lcase(text2replace)#)", "\1<span class=suchehighlight>\2</span>","ALL")>
Grazie
Altri suggerimenti
ho intenzione di rispondere in silenzio alla tua domanda:
<cfset str = "<span class='xyz'> sample text within span </span>" >
<cfdump var="#str#" />
<!--- Convert to list based on start and end tag brackets --->
<cfset arr = listToArray(str, ">,<") />
<!--- Replace the ACTUAL text --->
<cfset newStr = replace(str, arr[2], "my new text") />
<cfdump var="#newStr#" />
Disclaimer: se mi sorpresi a scrivere questo avrei probabilmente me pensare sulla strada sbagliata.
Questa strada conduce ad uno che cercano di usare le espressioni regolari per analizzare HTML, considerato come una cosa negativa, come indicato nel questo articolo .
Forse si può spiegare il problema un po 'più e noi possiamo aiutare.