我正在使用flex开发一个大文本的文字查找器 . 在那里,我使用RichEditableText来显示整个文本,当我找到一个单词时,我想用不同的颜色表示该文本的所有匹配单词 . 所以我用html颜色更改标签替换所有匹配的单词,如下所示 .
var replacedContent:String = txtRichBox.Text.replace(new RegExp(txtSearch.text,"g"), ""+txtSearch.text+"");
然后我将它作为HTML设置为RichEditableText,如下所示 .
txtRichBox.textFlow = TextConverter.importToFlow(replacedContent, TextConverter.TEXT_FIELD_HTML_FORMAT);
这工作晚餐很好 .
现在我有了新的要求 . 原始文本可以是XML . 然后,如果我将具有颜色更改html标签的XML设置为RichEditableText,因为它将HTML标记也作为HTML标记,因此HTML会崩溃 .
所以我尝试用&lt和&gt取代XML的 sings .
//Replace < with <
replacedContent:String = txtFileContent.text.replace(new RegExp("
//Replace > with >
replacedContent = replacedContent.replace(new RegExp(">","g"), ">");
然后RichEditableText不会将它们渲染回唱歌 . 它显示&lt;&gt;原样 .
有谁能建议我这个解决方案?