请帮助我更正 C# 中的正则表达式,以便仅当满足以下条件时才匹配/验证:
- 始终以
da/
开头 da/
后至少有一个字符- 仅允许使用非大写字母,范围为 a-z(包含两者)
- 允许使用数字 0-9
- 允许使用破折号 (-)
这是我所拥有的,但它不起作用:
/^da/+[a-z0-9+-]+$/
将验证正则表达式的接受字符串示例:
da/this-will-validate-correct-1
最佳答案
您的正则表达式允许在 da
后使用 1 个或多个 /
,并且字符类中的 +
允许使用 +
符号.
从需求来看,你只需要
^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/