2012-04-13 106 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] =>一)