我尝试解析来自谷歌的查询,但是它没有显示,但是根据http://derekslager.com/blog/posts/2007/09/a-better-dotnet-regular-expression-tester.ashx和正则表达式伙伴,我的正则表达式是正确的。但是,当我尝试使用实时开发时,它没有出现......
我要解析的字符串:
imgurl=http://www.blabla.com/products/W7i5W4Pw4fH22Mih/P_500.jpg&q=ASUS+Rampage+II+Extreme+LGA1366+Intel+X58+DDR3-1600+ATX+Motherboard&imgrefurl=http://www.blabla.com/Mboards/Intel/Rampage_II_Extreme/&usg=__4HSriQuFeVXg5AWsOGlZlsAmMmg=&h=500&w=500&sz=37&hl=en&start=1&zoom=1&tbnid=9ImqgVuzVz5ThM:&tbnh=130&tbnw=130&ei=MKrYUNm9MI6zrAfWi4GQBw&um=1&itbs=1&ptbm=isch
这是我的代码。
string Website = url; //url
string regularExpressionPattern = @"&q=(.*?)&imgrefurl";
MatchCollection matches = Regex.Matches(Website, regularExpressionPattern);
foreach (Match m in matches)
{
MessageBox.Show(m.Groups[1].Value);
}
System.Diagnostics.Debugger.Break();
即使使用调试器也不是结果? 注意:我使用的是Microsoft Visual C#2008,windows xp 2
答案 0 :(得分:2)
它适用于我:
我怀疑该字符串不包含您认为包含的内容。
答案 1 :(得分:0)
我终于找到了自己的答案......
当我使用HttpWebRequest下载到我的应用程序时,在&
之后添加 amp;所以网址看起来像这样......
imgurl=http://www.blabla.com/products/W7i5W4Pw4fH22Mih/P_500.jpg&q=ASUS+Rampage+II+Extreme+LGA1366+Intel+X58+DDR3-1600+ATX+Motherboard&imgrefurl=http://www.blabla.com/Mboards/Intel/Rampage_II_Extreme/&usg=__4HSriQuFeVXg5AWsOGlZlsAmMmg=&h=500&w=500&sz=37&hl=en&start=1&zoom=1&tbnid=9ImqgVuzVz5ThM:&tbnh=130&tbnw=130&ei=MKrYUNm9MI6zrAfWi4GQBw&um=1&itbs=1&ptbm=isch
很奇怪?