为什么这个正则表达式不能在.NET中运行?

Geo*_*uer 3 .net c# regex

我想要一个正则表达式,它将验证字符串以字母开头,后跟一些字母,数字或下划线.根据我的EditPadPro正则表达式解析器,以下测试应该通过.但事实并非如此.

Regex.IsMatch("Class1_1", @"^\w[\w|\d|_]*$").ShouldBeTrue();
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

SLa*_*aks 5

你的正则表达式有效,但不会做你认为它做的.

你应该用

Regex.IsMatch("Class1_1", @"^[A-Za-z]\w*$")
Run Code Online (Sandbox Code Playgroud)

(测试)