由字母a~z(不區分大小寫)、數字0~9、減號或下劃線組成,只能以數字或字母開頭和結尾 用戶名長度為4~18個字符:^[a-za-z0-9]{1}[a-za-z0-9|-|_]{2-16}[a-za-z0-9]{1}$
用戶名為大寫字母小寫字母或下劃線,并以字母開頭,長度為6-20:^[a-za-z][wd_]{5,19}
用戶名:包括英文小寫、漢字、數字、下劃線,不能全部是數字,下劃線不能在末尾:/^[a-z0-9_u4e00-u9fa5]+[^_]$/g
utf-8下:preg_match("/^[a-z0-9_x80-xff]+[^_]$/g",$a);
gbk下:preg_match("/^[a-z0-9_".chr(0xa1)."-".chr(0xff)."]+[^_]$/",$a)
可有中文的用戶名驗證:[a-za-z0-9][u4e00-u9fa5]
由于我們寫的表達式是匹配一個字符串的任何部分,它將不止認為'mike_84′是合法字符串,同樣也會匹配類似'%! mike_84&'這種包含了我們不希望出現的東西的字符串,我們需要用到行定位點, ^ (caret) 和 $ (dollar) 字符將把我們的表達式限制在一個字符串的起點和終點位置,這樣可以確保整個用戶名符合我們的設定,而不是一部分.
所以修訂版的正則表達式象這樣:/^[a-za-z0-9_]{3,16}$/
新聞熱點
疑難解答