正则表达式仅匹配字母

时间:2010-09-14 09:26:43

标签: asp.net regex

我需要为RegularExpressionValidator ASP.NET Web控件编写正则表达式。

正则表达式应该允许所有字母字符,但不允许数字或特殊字符(例如:|!“£$%& /()。

知道该怎么做吗?

3 个答案:

答案 0 :(得分:17)

^[A-Za-z]+$

验证长度为1或更大的字符串,仅包含ASCII字母。

^[^\W\d_]+$

对国际信件也是如此。

说明:

[^   # match any character that is NOT a
\W   # non-alphanumeric character (letters, digits, underscore)
\d   # digit
_    # or underscore
]    # end of character class

有效的是,您得到\w减去(\d_)。

或者,您可以使用ASP.NET支持Unicode属性的事实:

^\p{L}+$

验证长度为1或更长的Unicode字母串。

答案 1 :(得分:7)

包括空格:

"^[a-zA-Z ]*$"

排除空格:

"^[a-zA-Z]*$"

要将其设为非可选项,请将*更改为+

答案 2 :(得分:3)

您可以使用正则表达式:

^[a-zA-Z]+$

说明:

  • ^:启动锚点
  • [..]:Char class
  • +:一次或多次重复
  • $:结束锚