2010-12-14 3 views
0

У меня есть HTML-код как переменная String в Coldfusion.RegExpression для замены текста в тегах

Например:

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

Теперь я хочу Repalce промежуток слов из текста «образца текста в пролете», но не имя тега.

Может кто-нибудь мне помочь?

Заранее спасибо.

+0

Ярчайший способ объяснить свою цель будет обновить свой вопрос, чтобы включить пример того, что вы хотите, чтобы преобразовать текст. –

ответ

0

I habe изменил мой код, как это, и он работает, но насколько он эффективен, я не знаю Может кто-нибудь, пожалуйста, проверьте его?

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

Благодаря

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, считающегося плохой, как указано в статье this.

Возможно, вы можете объяснить свою проблему немного больше, и мы можем помочь.

+0

Пример участника может быть, вероятно, выполнен с использованием синтаксического анализа XML. – orangepips

Смежные вопросы