请帮助我在C#中更正此正则表达式以仅在满足以下条件时匹配/验证:
始终以da/
开头da/
后至少一个字符
仅允许使用非大写字母,范围从a-z(均包括在内)
允许数字0-9
允许使用破折号(-)
这是我所拥有的,但不起作用:
/^da/+[a-z0-9+-]+$/
将验证正则表达式的可接受字符串的示例:
da/this-will-validate-correct-1
最佳答案
您的正则表达式允许在/
之后使用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-]+
-a-z
和0-9
范围中的1个或多个字符或-
$
-字符串结尾。关于c# - 正则表达式以匹配特定模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37240087/