2016-12-21 55 views
-2

我有一個URL,我想完全匹配它的結尾。C#:我的正則表達式應該匹配這個嗎?

url是[some_host]/url/action 如果URL中包含「url/action」,我希望它匹配。

附加規則1: 該URL可以在結尾包含更多數據,例如, 「[some_host]/url/action/newTransaction /」 - 在這種情況下,我希望正則表達式不匹配它。

附加規則2:? 但是,如果URL爲「[some_host]/URL /操作T = true,那麼我想對正則表達式匹配

什麼都要我正則表達式的樣子

編輯: 一些例子:

"[some_host]/url/action" -- should match. 
"[some_host]/url/action/" -- should match. 
"[some_host]/url/action?t=true" -- should match 
"[some_host]/url/action/?t=true" -- should match 



"[some_host]/url/action/[ANYTHING_ELSE]" -- should NOT match 
+0

所以基本上你想三個'/'準確地匹配'網址'? –

+0

不,我已經在問題 – user1775598

+0

中加入了一些例子嗎'[some_host]'總是http還是https?另外,url的第二部分始終是url,後面是動作或其已經是模板(意思是說,只要url有效就可以捕獲所有模板,即。http://somewhere.com/some_url/some_action?parameter= 1')? –

回答

0

這不是一個正則表達式,很冗長。但是,很容易理解。

string url = ""; 
bool b1 = url.EndsWith("/url/action"); 
bool b2 = url.EndsWith("/url/action/"); 
bool b3 = url.EndsWith("/url/action/?t=true"); 
bool b4 = url.EndsWith("/url/action/?t=false"); 
bool match = b1 || b2 || b3 || b4;