正则表达式只允许字符串而不是单词" test"

时间:2016-09-19 10:22:07

标签: asp.net regex

^[a-zA-Z'.\s]{2,40}$"是我项目中用于firstname字段的原始正则表达式。我想修改此regex,以便它不会允许“测试”。作为输入。

"^(?!^test$)(^.*$)");"可以正常排除“测试”字样。但它允许空间和数字。那么什么是正则表达式只允许字符串作为输入,但不允许单词'测试'即名字可能不是' test' ?

1 个答案:

答案 0 :(得分:2)

您可以使用

^(?!test$)[a-zA-Z'.\s]{2,40}$

请参阅regex demo

详细

  • ^ - 字符串开头
  • (?!test$) - 字符串不能等于test
  • [a-zA-Z'.\s]{2,40} - 2至40个ASCII字母符号,'.或空格
  • $ - 字符串结尾