1

我试图解析来自谷歌的查询,该查询来到我的网站,但它没有出现,但根据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

4

2 回答 2

2

这对我来说可以:

程序运行截图

我怀疑该字符串不包含您认为它包含的内容。

于 2012-12-24T20:37:17.430 回答
0

我终于找到了自己的答案...

当我使用 HttpWebRequest 将其添加到我的应用程序中之后&

所以网址看起来像这样......

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

有点奇怪?

于 2012-12-24T20:45:41.020 回答