2016-05-15 85 views
2

請幫我糾正在C#這個正則表達式匹配/驗證,只有當符合下列條件:正則表達式匹配特定模式

  • 始終以da/
  • 至少一個單字符開始da/
  • 只有非大寫是允許的,範圍從AZ(包括兩端)
  • 數字0-9允許
  • 破折號被允許( - )

這是我有什麼,但它不工作:接受字符串的

/^da/+[a-z0-9+-]+$/ 

的例子,將驗證的正則表達式:

da/this-will-validate-correct-1 
+1

*,但不工作* - 究竟是如何不工作?請提供樣本輸入和預期輸出。很可能你只需要'^ da/[a-z0-9 + - ] + $' –

回答

2

你的正則表達式允許1或經過/da+裏面的字符類允許使用+符號。

的要求來看,你只需要

^da/[a-z0-9-]+$ 

regex demo

+字符類[a-z0-9+-]da/後,至少需要1個字符。

Regex.IsMatch("da/this-will-validate-correct-1", @"^da/[a-z0-9-]+$") 

C# demo

模式闡釋

  • ^ - 字符串的開始
  • da/ - 字符的文本字符串da/
  • [a-z0-9-]+ - 1以上CHARAC從a-z0-9範圍或-
  • $ - 字符串的結尾。
0

你可以試試這個^da/[a-z0-9\-]+$