2010-05-11 38 views
0

我需要檢查給定的輸入是否與給定模式匹配。
但在^/$包裝模式感覺像一個黑客。
是否有一個捷徑:.NET整行匹配

var match = Regex.Match(myInput, "^" + myPattern + "$"); 

+5

每次使用正則表達式時,感覺都像是黑客。你的感覺很正常。 :) – 2010-05-11 15:41:35

+1

請記住,'^'和'$'是模式的一部分。 – Armstrongest 2010-05-11 16:02:39

回答

7

沒有捷徑,加入^$不是黑客。你所做的正是你爲了匹配整條線而應該做的。

0

如果它讓你感覺更好:

var match = Regex.Match(myInput, String.Format("^{0}$", myPattern)); 

或者你甚至可以做到這一點:

myPattern = "^" + myPattern + "$"; 
var match = Regex.Match(myInput, myPattern); 

但是如前所述,它只是語義。只要您的代碼清晰,就可讀性而言,這應該不成問題。