在regex端带有点的有效单个字符

时间:2013-06-20 09:36:23

标签: c# regex

我需要实现以下正则表达式:

[a-zA-Z0-9_]+.

现在我无法弄清楚为什么“ 1 ”或“ a ”无效。

此外,以下示例:

 abc_123_1 
 _____abc___301 
 1 
 a 

也应有效

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

注意:根据问题的标题,我假设您使用的表达式为[a-zA-Z0-9_]+.(在撰写本文时,该问题已由OP以外的人编辑以删除该问题点)。

你的正则表达式目前需要“至少有一个a-z,A-Z,0-9或_”,然后是“任何一个字符”。因此,它至少需要两个字符才能匹配。

字符串“1”和“a”只有一个字符,因此不匹配。鉴于您的有效示例,您确定最后需要该点吗?

表达式[a-zA-Z0-9_]+(不带点)将匹配您的所有示例,包括单个字符。

答案 1 :(得分:0)

只要在表达式的末尾丢失点(。),即使使用“1”或“a”,它也会正常工作。

[a-zA-Z0-9_]+