0

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

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

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

此外,以下示例:

 abc_123_1 
 _____abc___301 
 1 
 a 

也应该是有效的。

谢谢您的帮助。

4

2 回答 2

3

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

您的正则表达式目前需要“az、AZ、0-9 或 _ 中的至少一个”,然后是“任何字符中的一个”。因此,它至少需要两个字符才能匹配。

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

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

于 2013-06-20T09:38:25.897 回答
0

只要去掉表达式末尾的点 (.),它就会起作用,即使是“1”或“a”。

[a-zA-Z0-9_]+
于 2013-06-20T09:42:08.550 回答