2017-02-16 100 views
0

我奮力從跟隨着得到陣列式查詢字符串

https://hlapservice0i/Web/api/Purchaselist/Creditor? 
filter[logic]=and& 
filter[filters][0][value]=John Doe & 
filter[filters][0][field]=customFilter& 
filter[filters][0][operator]=contains& 
filter[filters][0][ignoreCase]=true 

我試圖獲取存儲在filter[filters][0][value]

John Doe值提取值是一個簡單的MVC控制器。

+0

你要分析此字符串並獲得唯一篩選[過濾器] [0] [值]值? – DarkKnight

+0

嘗試['Split'](https://msdn.microsoft.com/en-us/library/b873y76a(v = vs.110).aspx)在['IndexOf'](https:// msdn。 microsoft.com/en-us/library/kwb0bwyd(v = vs.110).aspx)('?')放在'&&'上,然後在'='上生成的元素將關鍵字 – slawekwin

+0

@ DarkKnight是的,那是我需要的唯一價值。 –

回答

1

你可以做這樣的..

Live Demo here

var match = Regex.Match(input,@"(?<=filter\[filters\]\[0\]\[value\]=).*?(?=&)"); 

match.Value有一定的價值,你是後,這是John Doe

解釋:

?<=力匹配在第一次出現後開始o f filter[filters][0][value]

?=力匹配後面的字符,也就是,在這種情況下之前結束,&

+1

感謝您的幫助和努力:) –