请教一个用户注册正则表达式,要求为: 
1.只能包含中文、数字、字母(不区分大小写)、下划线 
2.不能以数字和下划线开头 
3.不能以下划线结尾 
4.中间的下划线不能连续 
5.长度控制在4-20个字符之间。 

解决方案 »

  1.   

    TRY:^[a-zA-Z]([a-zA-Z0-9_](?!_{2,})){2,18}[a-zA-Z0-9]$
      

  2.   


    ^(?i)[^\d_](_(?!_)|[\u4e00-\u9fa50-9a-z]){2,18}[^_]$
      

  3.   

    还包含中文?用这个:
    ^[a-zA-Z](\w(?!_{2,})){2,18}((?!_)\w)$
      

  4.   

    还有点问题,再修正一下。^((?![0-9_])\w)(\w(?!_{2,})){2,18}((?!_)\w)$
      

  5.   

    ^((?![0-9_])\w)(\w(?!_{2,})){2,18}((?!_)\w)$汗,上面把-打成-了。。