我想用c#正則表達式來匹配一個特定的字符串,但我無法弄清楚如何去做。任何幫助表示讚賞。c#有條件的正則表達式字符串匹配
,我試圖匹配是如下,其中A是一個大寫字母字符的字符串,X是一個大寫字母數字字符和#爲0,1或2。
AA-#-XX-X-XXX-XXXXXXX-XXXXXXXX
因此,以下任何一項都可以匹配上面的字符串。
XY-1
MM-0-AB
MM-0-AB-1-ABC-1234567
VV-2-XX-7-CCC-ABCDEFG-12345678
任何下列任何將不匹配。
QQ-7-AA
(只有0,1,2在第二級是允許的。)
QQ-2-XX-7-CC
(部分字符這一水平。)
QQ-2-XX-7-CCC-ABCDEFG-
(不能在短劃線端。)
QQ-2-XX-7-CCC-ABCDEFG-123456
(部分字符爲該級別。)
到目前爲止(不是那麼遠)我有作爲模式匹配@"^[A-Z]{2}"
,但我不確定如何匹配條件最後(我甚至不確定是否有條件地使用適當的術語)字符串的其餘部分,但只有當它在那裏。我是否需要爲此編寫7個不同的語句?似乎不合理,但我可能是錯的。
+1對於非常完整的答案。 – devstruck
我自己太親近了,但是你打敗了我。好的和很好解釋的答案! +1 –
我也太慢了。我認爲有一種方法可以縮短A-Z0-9(如0-9使用「\ d」),但我無法找到它。最近我得到的是「\ w」,但包含太多字符。 –