Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
现有的正则表达式
rWord = new Regex(@"\b(?:[-_'@\p{L}\p{N}]{2,40})\b");
要添加至少有一个 AZ 或 az 的条件
为什么这会被否决?
现在
123 可以通过 abc 可以通过 1ab 可以通过
我希望 123 不通过,因为它没有至少一个 AZ 或 az
为一个或多个字母尝试以下正则表达式:
[A-Za-z]+
您可以添加要求至少一个字母的前瞻条件:
(?=[-_'@\p{L}\p{N}]*[a-zA-Z])
结合您的原件,这将变为:
\b(?:(?=[-_'@\p{L}\p{N}]*[a-zA-Z])[-_'@\p{L}\p{N}]{2,40})\b
reFiddle的工作示例。