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 を使用してアプリにダウンロードすると、アンプが追加されます。&の

だから、このようなURL...

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 に答える