C#正则表达三位数和一个alpha

时间:2014-10-11 22:44:35

标签: javascript c# regex

我有一个字段,我需要有一个正则表达式,其中前3位数字是数字,第四个字符应该只是字母,我需要在c#和javascript中都有正则表达式。

我的以下正则表达式适用于三个数字

@"\A(\d){3}\Z";

如何添加必须为alpha

的第四个字符

2 个答案:

答案 0 :(得分:0)

如果用alpha表示只有拉丁字母,你可以这样做:

^\d{3}[a-zA-Z]$

您不能在JavaScript中使用\A\Z,但除非您使用^选项,否则它们等同于$m。< / p>

如果您需要完整的Unicode字符范围,请使用\p{L}而不是[a-zA-Z],但您不支持JavaScript支持。您必须手动将相关的Unicode范围包含在字符类...

答案 1 :(得分:0)

我认为你想知道的是Character Classes or Character Sets

  

使用&#34;字符类&#34;,也称为&#34;字符集&#34;,您可以告诉正则表达式引擎只匹配多个字符中的一个。只需将要匹配的字符放在方括号中即可。 [...]

  

[...]您可以在字符类中使用连字符来指定字符范围。 [0-9]匹配0到9之间的单个数字。您可以使用多个范围。 [0-9a-fA-F]匹配单个十六进制数字,不区分大小写。您可以组合范围和单个字符。 [0-9a-fxA-FX]匹配十六进制数字或字母X.同样,字符和范围的顺序无关紧要。 [...]

所以基本上你可以匹配角色&#34; A&#34;到&#34; Z&#34;将它们放在方括号中并使用连字符表示范围

[A-Z]

你可以匹配多组,所以如果你还需要&#34; a&#34;到&#34; z&#34; (小写)你可以包括

[A-Za-z]