脚本宝典收集整理的这篇文章主要介绍了javascript代码实例教程-js 正则之 判断密码类型,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。 如果用 if 或者 swITch 写看着确实蛋疼,如果有 7, 8 条判断,那就老长一大段了。
这个思路是我之前看 jQuery 源码的时候学到的,感觉用在这也不错。
先来看代码吧。
文本运行
function test(str, re, msg) {
VAR ret = str.match(re || /^(/d+)$|^([a-zA-Z]+)$|^([a-zA-Z].+)$|^([0-9a-zA-Z]+)$|^([/s/S]+)$/);
var msg = msg || ["", "纯数字", "纯字母", "字母开头+任意字符", "数字+字母任意组合", "未分类"];
var i = 0;
while (ret[++i] === undefined);
return msg[i];
}
console.LOG(test("123"));
console.log(test("sss"));
console.log(test("123xx"));
console.log(test("a123xx"));
console.log(test("%$#@"));
其实思路很简单,利用了正则的捕获组来对应数组里的字符。
/^(/d+)$|^([a-zA-Z]+)$|^([a-zA-Z].+)$|^([0-9a-zA-Z]+)$|^([/s/S]+)$/
可以拆分为
文本
/^(/d+)$/ 对应 "纯数字"
/^([a-zA-Z]+)$/ 对应 "纯字母"
/^([a-zA-Z].+)$/ 对应 "字母开头+任意字符"
/^([0-9a-zA-Z]+)$/ 对应 "数字+字母任意组合"
/^([/s/S]+)$/ 对应 "未分类"
如果对应的捕获组捕获到了,对应的分组下就会有值,如果没捕获到就会是 undefined
所以我们直接从 1 开始遍历结果集就可以得知是什么类型的了。
觉得可用,就经常来吧! 脚本宝典 欢迎评论哦! js脚本,巧夺天工,精雕玉琢。小宝典献丑了!
以上是脚本宝典为你收集整理的javascript代码实例教程-js 正则之 判断密码类型全部内容,希望文章能够帮你解决javascript代码实例教程-js 正则之 判断密码类型所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。