我正在寻找一种通过剥离html标签突出显示html块中的关键词的好方法。我可以正则表达式来搜索html标签中的关键词,但我还没有找到一种搜索标签的好方法。例如,如果关键词短语“未绑定”,我希望能够制作此
<p>I am not<strong>bound to please thee</strong> with my answers.</p>
包含在高亮标记中,不会破坏“强”标记(并使html无效)并变为:
<p>I am <span class="highlight">not</span><strong><span class="highlight">bound</span> to please thee</strong> with my answers.</p>
主要问题是维护html原样并用高亮标记包装文本块。我需要保持原来的HTML。否则我会剥离标签。
我现在能够想到的最佳解决方案是制作html的副本并在每个空格出现时放置计数器标记,然后剥离所有标签并搜索匹配的短语,然后回顾原始和标记化的字符串并确定从哪里开始构建高亮标记,然后开始向前走,从匹配开始到结束,根据需要开始和结束高亮跨度。这看起来有点矫枉过正。如果可能的话,我想要更优雅的东西。
解决方案将使用C#或javascript编写,具体取决于。
答案 0 :(得分:0)
当我需要在标记中更改重复实例但想节省时间时,我在Notepad ++中使用“查找和替换”功能。这是一个类似的问题,可能会有所帮助 Using regular expressions to do mass replace in Notepad++ and Vim
希望这有帮助。