c#正则,根据name获取input的value值
本帖最后由 winseer 于 2013-01-17 18:20:00 编辑 用c#winform,获取到一个网页的html代码,想提取里面某个input里value的值:
例如:
<input type='hidden' name='rancode' value='1' />
从网上找到如下正则代码,但经过测试,无法获取到rancode的value,不太懂正则,请问这个正则有什么不对的地方吗?
//str:需要提取字符串,inputname:控件名称
public string FindValueByName(string str, string inputname)
{
string reg = @"<input name=""(?<name>.*?)"" [\s\S]*?value=""(?<value>.*?)"" [\s\S]*?>";
Regex r = new Regex(reg, RegexOptions.None);
Match match = r.Match(str);
string aa = "未找到";
while (match.Success)
{
string name = match.Groups["name"].ToString();
string value = match.Groups["value"].ToString();
if (name == inputname)
{
return value;
}
else
{
match = match.NextMatch();
}
}
return aa;
}