0

Coldfusion で HTML コードを String 変数として使用しています。

例えば:

<cfset str = "<span class='xyz'> sample text within span </span>" >

ここで、テキスト「スパン内のサンプルテキスト」からスパンという単語を置き換えたいが、タグ名は置き換えたくない。

誰かが私を助けることができますか?

前もって感謝します。

4

2 に答える 2

0

私はあなたの質問に愚かに答えるつもりです:

<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#" />

免責事項:私がこれを書いていることに気付いた場合、私はおそらく自分が間違った方向に進んでいると思うでしょう。

この道は、正規表現を使用してHTMLを解析しようとすることにつながります。これは、この記事で説明したように悪いことと見なされています。

おそらくあなたはあなたの問題をもう少し説明することができ、私たちは助けることができます。

于 2010-12-14T22:19:41.273 に答える
0

私はこのようにコードを変更しましたが、うまくいくようですが、どれだけ効率的かわかりません。誰かチェックしてもらえますか?

<cfset htmlcontents = ReReplaceNoCase(htmlcontents, "(>[^<]*?)(#Lcase(text2replace)#)", "\1<span class=suchehighlight>\2</span>","ALL")>

ありがとう

于 2010-12-15T16:35:19.133 に答える