为了账号安全,请及时绑定邮箱和手机立即绑定

請問各位高手,如何用js檢查不可空白,至少6個字,必須包含英文字母、數字、特殊字元!

請問各位高手,如何用js檢查不可空白,至少6個字,必須包含英文字母、數字、特殊字元!

芜湖不芜 2019-04-08 11:16:43
html練習functionchkP(){vartPD=document.getElementById("idP").value;varre=/^(?=.*\d)(?=.*[a-zA-Z])(?=.*\W).+$/;if(tPD=="")window.alert("不能有空白");elseif(tPD.length
查看完整描述

2 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

“檢查不可空白”如何实现:
我不确定你的不可空白指的是用户必须填写内容还是说用户填写的内容中不能包含空格等空白内容。因此我分别作答:
如果是前者,即必须填写内容。那可以在trim后判断用户输入的长度,如果为0就说明为空。
如果是后者,可以使用/[\t]+/这个正则进行测试,如果为真说明内容中有空白。
以下为针对提问者原问题的回答:
你写的是javascriptvarreg=/^[a-zA-Z0-9]{6,}$/;
这个正则的意思是:全部以大小写字母或数字组成,至少6个字符。与你的需求有两处不符:
你要的是『必須包含英文字母、數字、特殊字元!』而实际上实现的是必须全部以XXXX组成,范围扩大了
你的要求中有特殊字符,但这个正则中没有(其实特殊字符并不是一个明确的范围,你最好把范围列举出来)
由于不知道你的特殊字符到底有哪些,我就先仅以!@#$%这四个作为特殊字符,给出一个例子javascriptvarreg=
/[a-zA-Z0-9!@\$%]{6,}/;
如果你有其他特殊字符,直接添加进去即可。注意,其中的$写作\$的原因是$在正则中有特殊含义,需要转义一下。
                            
查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 433 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信