Regex(或替代方法)删除HTML文档中特定标记的内容

Regex(或替代方法)删除HTML文档中特定标记的内容,html,regex,html-parsing,Html,Regex,Html Parsing,我正在尝试构建一个正则表达式字符串,用于在sublime text或notepad++中查找和替换,以从html页面中删除删除线文本。通常,删除线的格式如下所示: <span style="color: rgb(255,0,0);"><s>Some text here</s></span> 这里有一些文本 到目前为止,我已经想到了这个: <span.*<s>.*<\/s><\/span> 限制贪婪匹配

我正在尝试构建一个正则表达式字符串,用于在sublime text或notepad++中查找和替换,以从html页面中删除删除线文本。通常,删除线的格式如下所示:

<span style="color: rgb(255,0,0);"><s>Some text here</s></span>
这里有一些文本
到目前为止,我已经想到了这个:

<span.*<s>.*<\/s><\/span>

限制贪婪匹配的最佳方法是使其在特定字符处停止
[abc]
是一个字符类,表示a、b、c中的任意一个,而
[^abc]
表示除a、b、c以外的任何内容。因此,
[^展开dwks的答案和对其的评论,如果打通的文本中有任何HTML标记,例如,如果它看起来像

<span><s>first <b>second</b> third</s></span>

@maxzoom的可能副本:尽管他没有试图解析HTML文档。工作非常完美,一百万个谢谢!会在时间限制允许的情况下将此标记为正确答案:)如果删除线中有其他标记,则第一个正则表达式将不起作用,例如,
first second third
(在这种情况下,第二个策略将起作用。)是的,如果有其他嵌套的标记,那么最好在删除标记之间使用
*?
。可能是
[^>]*>
*?
而不是上一个示例中的
*
是的,这是合理的。(更新答案以包括建议。)
<span><s>first <b>second</b> third</s></span>
<span[^>]*><s>[^<]*</s></span>
<span[^>]*><s>.*?<\/s><\/span>