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

新手上路,请多包涵

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

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

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

我是 JavaScript 新手, match() 能满足我的需要吗?似乎检查字符串的一部分是否与正则表达式匹配,而不是全部。

原文由 Richard 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.4k
2 个回答

如果您想要的只是一个布尔结果,请使用 regex.test()

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

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

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

…并且您可以从您的正则表达式中删除 () ,因为您不需要捕获。

原文由 user113716 发布,翻译遵循 CC BY-SA 4.0 许可协议

使用 test() 方法:

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

原文由 Abhijeet Kasurde 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题