2 oiu1010110 oiu1010110 于 2016.03.12 12:26 提问

判断用户名字符串的问题,怎么用正则表达式和非正则表达写呢

用户名只能包含字母、数字和下划线,并且首字母只能为字母,用户名最短不能少于6个字符,最长不能超过20个字符,

2个回答

fateflv
fateflv   2016.03.12 13:25

如楼上一样。\d表示匹配数字,但这个选项并非所有环境都支持。建议使用0-9表示数字。

 /^[a-z][a-z_0-9]{5,19}$/i
 正则主体为  ^[a-z][a-z_0-9]{5,19}$
 i 表示忽略大小写,如果你的环境不支持 i 选项,可将字母写完,如下所示
 ^[a-zA-Z][a-zA-Z_0-9]{5,19}$
fateflv
fateflv 回复oiu_半个夏天: Java里应该也是有正则方法的,你得调用正则来声明个变量来定义匹配才行.具体Java正则用法可参考http://baike.xsoftlab.net/view/207.html
2 年多之前 回复
oiu1010110
oiu1010110 String username = input.next(); if(username.equal("^[a-zA-Z][a-zA-Z_0-9]{5,19}$")){ ///// } 是这样写的吗?
2 年多之前 回复
showbo
showbo   Ds   Rxr 2016.03.12 12:40
 ^[a-z][a-z\d_]{5,19}$
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
正则表达式类判断字符串内是否有非数字的字符
/**  * 正则表达式类判断字符串内是否有非数字的字符  *  */ public class Patern { public static boolean adjust(String text) { //char[]={'a','c','2','3'} char[] cs=text.toCharArray(); for (int i = 0; i char number=c
前端开发正则表达式验证以及常用的正则表达式
刚才在网上看到了一些比较全的正则表达式,果断收入囊中。常用符号说明^ 匹配输入字符串的开始位置 $ 匹配输入字符串的结束位置 * 匹配前面的子表达式零次或多次。例如,zo 能匹配 “z” 以及 “zoo”。 等价于{0,} + 匹配前面的子表达式一次或多次验证手机号码function isPhone(phone){ var phonereg = /^1[34578]\d{9}$/;
Java简单注册格式验证(正则表达式)
一、用正则表达式写的简单的注册验证,具体要求如下:用户注册验证(用户名,密码,昵称,中文名字,手机号,邮箱)所有信息符合以下条件才允许注册:1.用户名格式:由字母数字下划线组成且开头必须是字母,不能超过16位;2.密码格式:字母和数字构成,不能超过16位;3.昵称:字母和数字构成长度大于6小于10;4.手机号:全数字,长度为11位;5.邮箱:必须包含@符号;必须包含点;点和@之间必须有字符;所有信息
js用正则表达式判断字符串中是否有中文
<br /> <br />obj = "jjjjjjj要"<br />if(/.*[/u4e00-/u9fa5]+.*$/.test(obj)) <br />  { <br />  //alert(obj[i]);<br />  alert("不能含有汉字!"); <br />  }
关于字符串的分隔,正则表达式
一直认为Java的输入处理起来不方便,当今天看到正则表达式,发现有些问题就可以迎刃而解了,啦啦啦: 下面是我在网上看到的帖子与回帖,稍微整理了一下: 昨天看到有人用 str.split("\\s+") 今天又看到 "420348092".matches("\\d+") "fajsdkfjaskdfj".matches("\\w+"); 请问这些  "//什么的" 是什么东西?
正则表达式 ---判断非空
1、用来判断 textarea 是否全为空(不可全为空格和换行,允许字符前面和后面为空)/^[\s\S]*.*[^\s][\s\S]*$/[\s\S]* 前面可以为任意字符 .*[^\s] 任意非空格和非换行字符
java 正则为空字符串或符合定义规则
在最近的项目中,发现Bean validation时,需要实现如下效果: 1、该字段可以为空 2、不为空时,需要满足【汉字+字母+数字】--车牌号 如果在validtion @Pattern注解不加入同时满足这两个条件的正则,需要单独判断对象,影响代码简洁和效率。 网上多方搜索后发现如下正则可以满足: ^(\\s&&[^\\f\\n\\r\\t\\v])* | [\u4e
用正则表达式验证用户名密码
function a(){ var yhm=document.getElementById("yhm").value; var reg=/^[a-zA-Z]\w{5,17}$/; if(reg.test(yhm)==false){  alert('用户名输入错误');  document.getElementById("aa").innerHTML="以字母开头,长度在6-18之间,只能
正则表达式:注册和登录使用
手机号码:   /^0{0,1}(13[0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/ 区号+座机号码+分机号码:regexp="^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$" 手机(中国移动手机号码):regexp="^((\d3)|(\d{3}\-))?13[456789]\d{8}|15[89]
正则表达式((常用判断)精心收集)
一、字母数字组合整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 只能输入数字:”^[0-9]*$” 只能输入n位的数字:”^\d{n}$” 只能输入至少n位的数字:”^\d{n,}$” 只能输入m~n位的数字:”^\d{m,n}$” 只能输入零和非零开头的数字:”^(0|[1-9][0-9]*)$”。 只能输入有两位小数的正实数:”^[0-9]+(.[0-9]{2})?$”。 只能