2012-04-13 107 views

回答

3

你是在测试实际文字'username'

/[a-bA-B0-9]+/会测试a中是否存在a,b,A,B,0,1,2,3,4,5,6,7,8,9 中的任何字符串。所以它会匹配abBa854Abba32,它将匹配sjfsgfafnvesv

/^[a-bA-B0-9]+$/将测试enitre字符串由a,b,A,B,0,1,2,3,4,5,6,7,8,9组成。所以它会匹配abBa854Abba32,它不会匹配sjfsgfafnvesv

也许你的意思是/^[a-zA-Z0-9]+$/

+0

你是绝对正确的。但是为什么它在第一个例子中没有失败呢? D: – 2012-04-13 02:39:33

+2

因为''用户名'包含'a'。 – 2012-04-13 02:42:06

+0

我真的需要一些正则表达式练习。感谢你们 – 2012-04-13 02:44:10

2

第二个不匹配,因为你告诉正则表达式匹配开始的序列与字符类中的其中一个项目。你的字符串的第一个字母是“u”,你的角色类[a-bA-B0-9]中没有“u”。

2

here

你可以看到,它仅匹配a

结果

1匹配的结果:

阵列( [0] =>一)