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

检查字符串是否与JS中的正则表达式匹配

/ 猿问

检查字符串是否与JS中的正则表达式匹配

检查字符串是否与JS中的正则表达式匹配

我想使用JavaScript(可以使用jQuery)进行一些客户端验证来检查字符串是否与正则表达式匹配:

^([a-z0-9]{5,})$

理想情况下,它将是一个返回true或false的表达式。

我是一个JavaScript新手,确实match()做我需要的东西?它似乎检查字符串的一部分是否匹配正则表达式,而不是整个事物。


查看完整描述

3 回答

?
慕码人8056858


使用regex.test(),如果你想要的是一个布尔结果:


/^([a-z0-9]{5,})$/.test('abc1');   // false


/^([a-z0-9]{5,})$/.test('abc12');   // true


/^([a-z0-9]{5,})$/.test('abc123');   // true

...而且你可以()从正则表达式中删除它,因为你不需要捕获。


查看完整回答
反对 回复 2019-07-29
?
偶然的你

使用test()方法:

var term = "sample1";var re = new RegExp("^([a-z0-9]{5,})$");if (re.test(term)) {
    console.log("Valid");} else {
    console.log("Invalid");}


查看完整回答
反对 回复 2019-07-29
?
牛魔王的故事

你也可以使用match():


if (str.match(/^([a-z0-9]{5,})$/)) {

    alert("match!");

}

test()似乎更快,因为你可以在这里阅读。


match()和之间的重要区别test():


match()仅适用于字符串,但test()也适用于整数。


12345.match(/^([a-z0-9]{5,})$/); // ERROR

/^([a-z0-9]{5,})$/.test(12345);  // true

/^([a-z0-9]{5,})$/.test(null);   // false


// Better watch out for undefined values

/^([a-z0-9]{5,})$/.test(undefined); // true


查看完整回答
反对 回复 2019-07-29

添加回答

回复

举报

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