gpt4 book ai didi

javascript - 正则表达式匹配任何一组数字,除了以 7 开头的 10 位数字

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

我想捕获除以 7 开头的 10 位数字之外的所有数字(任何数字)。

71234567890 - 应该匹配
7123456789 - 不应该匹配
1234567890-应该匹配

最佳答案

使用模式

/7\d{9}|(\d+)/
^^^^^^ MATCH 10-DIGIT NUMBER STARTING WITH SEVEN, DO NOT CAPTURE
^ --OR--
^^^^^ MATCH OTHER SEQUENCES OF DIGITS AND DO CAPTURE

这将匹配以 7 开头但捕获它的 10 位数字;否则,它将匹配数字序列并捕获它。

现在

'7123456789'.match(regexp)
["7123456789", undefined]

'1234567890'.match(regexp)
["1234567890", "1234567890"]

换句话说,捕获的字符串将在 match 返回的数组的第二个元素中找到。

如果你想把它锚定到字符串的开头和结尾,那么

/^7\d{9}$|(^\d+$)/

您也可以按照评论中的建议,使用负面的前瞻性来做到这一点,但这里不需要,对于刚开始使用正则表达式的人来说可能有点牵强。

关于javascript - 正则表达式匹配任何一组数字,除了以 7 开头的 10 位数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36346650/

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