正则表达式匹配包含字母的字符串和仅下划线

Soh*_*pta 3 regex vb.net .net-2.0

好吧,我的问题很简单,我想匹配一个具有以下属性的字符串

  • 没有空白区域
  • 必须以一封信开头
  • 不得包含除下划线以外的任何其他特殊字符
  • 可能包含数字

请帮助创建这样的正则表达式.

Joe*_*oey 10

^[a-zA-Z][a-zA-Z0-9_]*$
Run Code Online (Sandbox Code Playgroud)

解剖它:

  • ^ 行/字符串的开头
  • [a-zA-Z] 以一封信开头
  • [a-zA-Z0-9_]* 后跟零个或多个字母,下划线或数字.
  • $ 行尾/字符串

如果您需要考虑Unicode,那么以下内容可能更合理:

^\p{L}[\p{L}\p{Nd}_]*$
Run Code Online (Sandbox Code Playgroud)

这不仅匹配ASCII字母和数字,还匹配Unicode支持的所有脚本.数字仅限于十进制数字,因此您不会获得罗马数字.