正则表达式:单个单词

Elm*_*mex 3 .net c# regex

如果用户输入是单个单词,我想检查C#程序.我这个词只有字符AZ和az.没有空格或其他字符.我试试[A-Za-z]*,但这不起作用.这个表达有什么问题?

Regex regex = new Regex("[A-Za-z]*");
if (!regex.IsMatch(userinput);)
{
  ...
}
Run Code Online (Sandbox Code Playgroud)

你能推荐一个包含正则表达式的comprensiv列表的网站吗?!

Sea*_*ght 14

它可能有效,但你没有锚定正则表达式.您需要分别使用^$将表达式锚定到字符串的开头和结尾:

Regex regex = new Regex("^[A-Za-z]+$");
Run Code Online (Sandbox Code Playgroud)

我也改为*,+因为*匹配0次或更多次,而+匹配1次或更多次.

  • 考虑到国际字符的`[A-Za-z]` 有什么好的替代品? (3认同)

Ser*_*sev 5

您应该为字符串的开头和结尾添加锚点: ^[A-Za-z]+$