<div id="companyname">
<ul>
<li class="china">
<span id="chinaname" class="chinaname vas_childvisible">武汉威哥变频技术服务公司</span>
<span id="enname" class="enname vas_childvisible"></span>
</li>
</ul>
</div>怎么用正则表达式 提取中间的 公司名啊?请大家出谋划策啊~~先谢过了!!
<ul>
<li class="china">
<span id="chinaname" class="chinaname vas_childvisible">武汉威哥变频技术服务公司</span>
<span id="enname" class="enname vas_childvisible"></span>
</li>
</ul>
</div>怎么用正则表达式 提取中间的 公司名啊?请大家出谋划策啊~~先谢过了!!
(?<=<span id=\"chinaname\" class=\"chinaname vas_childvisible\">).*?(?=</span>)
HtmlDocument doc = WebBrowse.Document;之后用着就很方便了。for(int i=0; i<doc.all.count; i++)
{
if(doc.all[i].tagName == "SPAN" &&
doc.all[i].id == "chinaname")
{
string company = doc.all[i].innerHtml;
//或者
string company = doc.all[i].GetAttribs("value"); //方法名可能没写对。自己查Msdn。反正是Get开头。
}
}满意的话。给分哈。不满意,再继续回帖补字节。
string str = @"<span id=""chinaname"" class=""chinaname vas_childvisible"">武汉威哥变频技术服务公司</span>";
string pattern = @"(?<=<span id=""chinaname[^>]*>).*(?=</span>)";
Console.WriteLine(pattern);
Regex regex = new Regex(pattern);
Console.WriteLine(regex.Match(str).Value);
/*
* 武汉威哥变频技术服务公司
* */
+ "<ul>"
+ "<li class=\"china\">"
+ "<span id=\"chinaname\" class=\"chinaname vas_childvisible\">武汉威哥变频技术服务公司</span>"
+ "<span id=\"enname\" class=\"enname vas_childvisible\"></span>"
+ "</li>"
+ "</ul>"
+ "</div>";
Regex reg = new Regex(@"(?is)<span[^>]*?id=(['""\s]?)chinaname\1[^>]*?>((?:(?!</?span).)*)");
foreach (Match m in reg.Matches(str))
Response.Write(m.Groups[2].Value + "<br/>");
//武汉威哥变频技术服务公司