用于提取脚本标签的正则表达式

我试图在C#中编写一个正则表达式来删除所有脚本标记及其中包含的任何内容。

到目前为止,我已经提出了以下内容: \[^(\</)]*?\ ,但这不起作用。

我将分解并在每个部分解释我的想法:

 \ 

在这里,我试图声明它应该获取任何脚本元素,即使它以名称空间为前缀,例如. 我还将此添加到结束标记中。

 [^(\</)]*? 

在这里,我试图声明除了等之外,它应该允许在标签中包含任何内容。

 \ 

在这里,我声明它应该有一个结束标记。

任何人都可以找到我错的地方吗?

您无法使用正则表达式解析HTML。

请改用HTML Agility Pack 。

这个正则表达式做得很好:

 \<(?:[^:]+:)?script\>.*?\<\/(?:[^:]+:)?script\> 

但请不要这样做

您将通过这个简单的HTML遇到问题:

 ";  

你怎么解决这个问题? 使用HTML Agility Pack进行此类操作更为明智。