使用正则表达式或ToDicitionary获取URL

时间:2012-03-17 09:32:04

标签: c# regex dictionary

我如何获取

"oauth_verifier=RN9vtxDFfozW51CSTuls0J4C&oauth_token=4%2F3uYq_3vYUSjXaFXtS74B_laW2V4d"

RN9vtxDFfozW51CSTuls0J4C

4%2F3uYq_3vYUSjXaFXtS74B_laW2V4d

来自上面的字符串?

1)使用正则表达式

2)使用ToDictionary(选择器)

1 个答案:

答案 0 :(得分:2)

<强>正则表达式:

使用积极的外观:

用于获取oauth_verifier值的正则表达式模式:

(?<=oauth_verifier=).+(?=&)

用于获取oauth_token值的正则表达式模式:

(?<=oauth_token=).+

e.g:

string input = "oauth_verifier=RN9vtxDFfozW51CSTuls0J4C&oauth_token=4%2F3uYq_3vYUSjXaFXtS74B_laW2V4d";
string oauth_verifier = Regex.Match(input, "(?<=oauth_verifier=).+(?=&)").Value;
string oauth_token = Regex.Match(input, "(?<=oauth_token=).+").Value;

<强> ToDictionary

var dic = input.Split('&').ToDictionary( s => s.Remove(s.IndexOf('=')), s => s.Substring(s.IndexOf('=') + 1));