需要正则表达式的文本框,以便它接受第一个字母的字符并保留为数字

时间:2011-12-30 08:22:21

标签: c# regex winforms

大家好我需要一个regex接受第一个字母作为字符,剩下的应该是数字。

也不允许间距..

Possible cases : a123, abc123, xyz123 and so on ...
Unacceptable : 123abc,1abc12, a 123 and so on..

我尝试过这样的想法,但我不确定这是否有效,所以任何人都可以帮助我..

"[A-Z][a-z]\d{0,9}"

5 个答案:

答案 0 :(得分:2)

^[A-Za-z]+[0-9]+$

匹配一个或多个ASCII字母,后跟一个或多个ASCII数字。如果数字是可选的,请改用[0-9]*

如果您还想允许其他字母/数字而不仅仅是ASCII,请使用

^\p{L}+\p{D}+$

答案 1 :(得分:1)

你可能需要这个:

"[a-zA-Z]+\d+"

答案 2 :(得分:0)

这个表达式[A-Za-z]\w*

怎么样?

答案 3 :(得分:0)

[A-Z]|[a-z]{1,}\d{1,}

但正如您所提到的,可能的情况应该是:a123,b321,z4213213,但不是abc123。正确?

所以regExp应该是[A-Z]|[a-z]\d{1,}

答案 4 :(得分:0)

我强烈建议您不要将自己限制为ASCII,因为此问题的大多数其他答案都是如此。

使用我建议的character classes,你应该使用:

^[\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Pc}]\d+$

^$ {/ 3}}见the reference