我正在寻找一个正则表达式来查找html输出中隐藏类型的所有输入字段。有人知道这样做的表达吗?
答案 0 :(得分:2)
我同意Radomir建议的链接是正确的,HTML不应该用正则表达式解析。但是,我做不 同意从一起使用中收集到的任何内容都没有意义。随之而来的咆哮完全适得其反。
纠正罗伯特的RegEx:
<([^<]*)type=('|")hidden('|")>[^<]*(/>|</.+?>)
答案 1 :(得分:2)
我知道您要求正则表达式,但请下载Html Agility Pack并执行以下操作:
var inputs = htmlDoc.DocumentNode.Descendants("input");
foreach (var input in inputs)
{
if( input.Attributes["type"].Value == "hidden" )
// do something
}
您还可以将xpath与html敏捷包一起使用。
答案 2 :(得分:0)
在尝试搜索或操作HTML或XML时,正则表达式通常是作业的错误工具;解析库可能是一个更清洁,更简单的解决方案。
也就是说,如果你只是查看一个大文件并且准确性并不重要,那么你可以用<input[^>]*type="?hidden"?
这样的东西做得相当好。