繁体   English   中英

正则表达式限制重复数字

[英]Regex to limit repeating digits

我在限制重复数字的 grails 配置中有一个正则表达式:

password.regex = /^(?!.*([0-9])\1{2,})/

当我在https://regex101.com/ 中测试时,这很好用。 但它不适用于我们拥有的 JS 代码,因为它将正则表达式修改为:

var passRegex = /(${ConfigurationHolder.config.password.regex})/;

所以结果是这样的:

/(^(?!.*([0-9])\1{2,}))/ 

不幸的是,我无法更改 js 代码,因此我只能依赖配置的修改。 有人可以帮我修改这个正则表达式吗

/(^(?!.*([0-9])\1{2,}))/ 

这样它就可以在不删除第一对左括号和右括号的情况下按预期工作。

一个合乎逻辑的解决方案是从您拥有的代码中删除外括号,例如var passRegex = /${ConfigurationHolder.config.password.regex}/; .

如果它不是一个选项,只需将\\1替换为\\2因为要检查的数字组被移位并获得一个新的 ID = 2, password.regex = /^(?!.*([0-9])\\2{2,})/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM