gpt4 book ai didi

javascript - 使用 JavaScript 验证正则表达式时返回错误

转载 作者:行者123 更新时间:2023-11-30 19:43:15 25 4
gpt4 key购买 nike

有人可以看看我的正则表达式吗?我正在尝试验证 regex 组,但它匹配得太贪婪了。

/*Should match only 16 characters in total & must begin with BE and follow by 14 digits */ 

var re = /(?<iban>[/BE\B/(?={0-9})])/gm

let correctIban = 'BE71096123456769' // => should match
let badIbanOne = 'BE13466123456767590kd' // => should NOT match
let badIbanTwo = 'BE13466123456767590679080176' // => should NOT match
let badIbanThree = 'AZ71096123456769' // => should NOT match

console.log(re.test(correctIban)); // => true
console.log(re.test(badIbanOne)); // => false
console.log(re.test(badIbanTwo)); // => false
console.log(re.test(badIbanThree)); // => false

编辑

感谢大家的帮助。对于那些想知道的人,这是 ES2018 中带有捕获组语法的代码:(?<iban>^BE\d{14}$)

最佳答案

var re = /^BE\d{14}$/; 

解释:

  • ^ - 标记表达式的开始
  • BE - 文字字符'BE'
  • \d - 任何数字(与 [0-9] 相同)
  • {14} - 量词 - 精确 14
  • $ - 标记表达式结束

不需要所有额外的东西。

您可以在这里尝试:https://regex101.com/r/4wF3NG/1

关于javascript - 使用 JavaScript 验证正则表达式时返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55184272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com