我正在使用大量的html代码,但我只对<a>
和<img>
标记感兴趣。您能否建议如何使用c#和regex从输入字符串中删除<a>
和<img>
标记以外的任何内容?
我确实尝试过HAP(HTML Agility Pack),但解析一些内容会遇到StackOverflowException。
伙计们,我不是在寻求HTML Agility Pack的帮助。我正在使用Regex解决方案。
答案 0 :(得分:1)
如果您只想&lt; img&gt;和&lt; a&gt;
使用它们中的两个和交替运算符|
创建一个正则表达式(<img.+?>|<a.+?>.+?<\/a>)
在替换中你可以使用组\ 1
答案 1 :(得分:0)
老实说,就像所有人在你的评论中所说的那样,我不建议你使用正则表达式来解析HTML(这是一种规则),但是如果你真的需要它......(无论出于什么原因可能是...)
我说你可以解析该字符串并获取HTML字符串上的所有标记,并将其保存在List上。
正则表达式非常简单(你可以通过学习一些正则表达式来扩展它们......它并不那么难,我不会为你做所有的工作,主要是当我没有线索的时候HTML看起来像什么)
"<img.+?>"
"<a.+?>.+?</a>"
在这里使用一些html进行测试(删除&#34;&#34;进行测试):http://regexpal.com/
对于C#代码本身,我很确定你可以很容易地找到它。