0

我正在使用 flex 开发一个大文本的单词查找器。在那里,我使用 RichEditableText 来显示整个文本,当我找到一个词时,我想用不同的颜色表示该文本的所有匹配词。所以我用html变色标签替换了所有匹配的单词,如下所示。

var replacedContent:String = txtRichBox.Text.replace(new RegExp(txtSearch.text,"g"), "<font color='#ff0000'>"+txtSearch.text+"</font>");

然后我将它作为 HTML 设置为 RichEditableText,如下所示。

txtRichBox.textFlow = TextConverter.importToFlow(replacedContent, TextConverter.TEXT_FIELD_HTML_FORMAT);

这很好用。

现在我有一个新的要求。那里的原始文本可以是 XML。然后,如果我将带有颜色更改 html 标记的 XML 设置为 RichEditableText 作为 HTML,一切都会崩溃,因为它也将 XML 标记作为 HTML 标记。

所以我尝试用 < 和 > 替换 XML 的 < 和 > 歌曲。

//Replace < with &lt
replacedContent:String = txtFileContent.text.replace(new RegExp("<","g"), "&lt");               

//Replace > with &gt
replacedContent = replacedContent.replace(new RegExp(">","g"), "&gt");

然后 RichEditableText 不会将它们呈现回 < 和 > 唱歌。它按原样显示 < 和 >。

谁能建议我解决这个问题?

4

0 回答 0