如何使用正则表达式检查字符串第二个字符中是否有字母

ESu*_*uth 0 c# regex

假设我想创建一个 ID 号,例如1A454F01

确保字符串的第二个字符恰好有一个字母的正则表达式是什么?

我不确定如何检查特定的字符组合。

到目前为止我所拥有的是:

if(!Regex.IsMatch(txtTrainID.Text, @"^[\w,\d,\w,\w]+$"))
Run Code Online (Sandbox Code Playgroud)

这显然是完全错误的,我很难在任何地方找到一个像样的简单答案。

Jan*_*Jan 5

如果这是唯一的要求(我确信不是),请在第二个位置使用锚点和字符类,如下所示

^.[A-Za-z]
Run Code Online (Sandbox Code Playgroud)

请参阅regex101.com 上的演示


您的意思可能归结为:

^\d[a-zA-Z]\d{2}$
Run Code Online (Sandbox Code Playgroud)

后者表示一位数字即 a-zA-Z 之一,后跟另外两位数字和字符串末尾。请参阅同一站点上的另一个演示。