国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Regex > 正文

一個(gè)驗(yàn)證用戶名的正則表達(dá)式

2020-03-16 21:22:22
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
求一個(gè)驗(yàn)證用戶名的正則表達(dá)式
各位大哥大姐,晚輩求一個(gè)驗(yàn)證用戶名的正則表達(dá)式,苦苦思索了一個(gè)星期還是沒(méi)有弄出來(lái),本人愚鈍,還望大家指教!
VBscript編程要求用戶名的字符控制在3至20個(gè)之間,由中文、大小寫字母、數(shù)字、下劃線、小數(shù)點(diǎn)、減號(hào)組成,  必須以中英文或數(shù)字開(kāi)頭結(jié)尾且下劃線、小數(shù)點(diǎn)、減號(hào)這三個(gè)字符中的其中一個(gè)的組合不能是連續(xù)的 a__a或a--a或a..a 這樣的,但可以 a_a.a_a.a_a-a-a-a_a-a.a.a.a這樣的。
如果超出這個(gè)范圍則用戶名不通過(guò)。
就是一直弄不明白下劃線、小數(shù)點(diǎn)、減號(hào)這三個(gè)字符中的其中一個(gè)的組合的問(wèn)題,頭都大了
此為不符合的正則: 
^.{0,2}$|.{21,}|^[^A-Za-z0-9/u4E00-/u9FA5]|[^/w/u4E00-/u9FA5.-]|([_.-])/1 
  1. <script language=vbscript>  
  2. function regtest(str)  
  3. Set re = New RegExp  
  4. re.Pattern = "^.{0,2}$|.{21,}|^[^A-Za-z0-9/u4E00-/u9FA5]|[^/w/u4E00-/u9FA5.-]|([_.-])/1"  
  5.   if re.Test(str) then  
  6.   msgbox("不符合")  
  7.   else  
  8.   msgbox("符合")  
  9.   end if  
  10. end function  
  11. </script>  
  12. <input id=strs value="a_a.a_a.a_a-a-a_a-a" size=40>  
  13. <input type=button onclick=regtest(strs.value) value="檢查"


(?!pattern)  
負(fù)向預(yù)查,在任何不匹配Negative lookahead matches the search string at any point where a string not matching pattern 的字符串開(kāi)始處匹配查找字符串。這是一個(gè)非獲取匹配,也就是說(shuō),該匹配不需要獲取供以后使用。例如'Windows (?!95|98|NT|2000)' 能匹配 "Windows 3.1" 中的 "Windows",但不能匹配 "Windows 2000" 中的 "Windows"。預(yù)查不消耗字符,也就是說(shuō),在一個(gè)匹配發(fā)生后,在最后一次匹配之后立即開(kāi)始下一次匹配的搜索,而不是從包含預(yù)查的字符之后開(kāi)始

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 陵川县| 宁武县| 华亭县| 铜陵市| 武威市| 宣城市| 那坡县| 南岸区| 信宜市| 南陵县| 镇安县| 永春县| 乌鲁木齐市| 大安市| 桂东县| 营口市| 南阳市| 四子王旗| 米易县| 呼伦贝尔市| 黔东| 互助| 荔浦县| 思南县| 远安县| 余庆县| 铜山县| 交口县| 怀仁县| 南丹县| 金平| 赣州市| 富蕴县| 开封县| 玉龙| 原平市| 武邑县| 安新县| 高雄县| 富蕴县| 五大连池市|