Napríklad existuje reťazec: aaa=1&ccc=test&ddd=code123&..... a mnoho ďalších parametrov!
Ak ide o parameter adresného riadku, hodnotu môžete získať jednoducho pomocou Request.QueryString["parameter name"] alebo priamo Request["parameter name"]
Ak je to len reťazec a chcete ho analyzovať, existujú dva spôsoby 1 Regulárny výraz 2Rozdeliť a potom vykonať rozdelené prechádzanie Metóda regulárneho výrazu:
- /// <summary>
- /// 获取url参数
- /// </summary>
- /// <param name="paramName">参数名称</param>
- /// <param name="paramsStr">整个url</param>
- /// <returns></returns>
- public static string GetParams(string paramName, string paramsStr)
- {
- Regex regParam = new Regex("(?:^|&)" + paramName + "=(?<Value>[^&]*)", RegexOptions.IgnoreCase);
- Match mth = regParam.Match(paramsStr.Trim());
- if (mth.Success)
- {
- //匹配成功
- return mth.Groups["Value"].Value;
- }
- else
- {
- return null;
- }
- }
Kopírovať kód
Čo sa týka druhej metódy, musíte najprv rozdeliť('&'), potom prejsť týmto poľom a potom rozdeliť('='), aby ste zistili, či je názov parametra [0] rovnaký ako zadaná hodnota, a ak je to špecifikovaná hodnota, potom priamo vrátiť do [1] dvojnásobka pre slučku
|