我正在解析一些HTML源代码。是否有正则表达式脚本来确定html文档中的alt标记是否为空?
我想看看alt标签是否为空。
正则表达式适用于此,还是应该在C#中使用字符串操作?
答案 0 :(得分:2)
您必须解析HTML并检查标记,使用以下链接,它包含用于解析HTML标记的C#库,您可以遍历标记并获取标记数量:Parsing HTML tags。
答案 1 :(得分:0)
如果这是有效的XHTML,为什么你需要Regex?如果您只是搜索字符串:
alt=""
...您应该能够找到所有空的alt
标签。
在任何情况下,考虑到写得不好的HTML标记(尤其是空格),构建搜索的正则表达式也不应该太复杂:
alt\s*=\s*"\s*"
答案 2 :(得分:0)
如果您只想查看页面,那么CSS选择器可能会更好,假设您的浏览器支持:not selector。
安装selectorgadget书签。在页面上激活它,然后将以下选择器放在输入框中,然后按Enter键。
img:not([alt])
如果您要对其进行自动化,并且可以访问HTML的DOM,则可以使用相同的选择器。
答案 3 :(得分:0)
正则表达式在解析HTML方面根本不好(请参阅Can you provide some examples of why it is hard to parse XML and HTML with a regex?了解原因)。你需要的是一个HTML解析器。有关使用各种解析器的示例,请参阅Can you provide an example of parsing HTML with your favorite parser?。