这是我的字符串"search=;pageid=62,67;categoryid=0;orderby=;showon=1"
我想分别得到62和67,我该怎么做?
答案 0 :(得分:0)
答案 1 :(得分:0)
您可以使用String.Split
和Lookup<TKey, TValue>
:
var yourString = " search=;pageid=62,67;categoryid=0;orderby=;showon=1";
var lookup = yourString.Trim().Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries)
.Select(t => t.Split('='))
.ToLookup(arr => arr[0], arr => arr[1].Split(','));
string[] allPageIDs = lookup["pageid"].FirstOrDefault();
// allPageIDs can be null if the string didn't contain pageid
foreach (string id in allPageIDs)
Console.WriteLine(id);
查找类似于字典,但如果输入序列多次包含密钥,则不会引发异常,但该值包含所有结果。因此,上面FirstOrDefault
会返回第一个结果,即string[]
,在这种情况下有两个值62,67。