gpt4 book ai didi

javascript - 正则表达式 - 如何匹配整个字符串并仅捕获具有一定长度的子组

转载 作者:行者123 更新时间:2023-11-28 15:16:39 27 4
gpt4 key购买 nike

我需要一些关于 Javascript 中的正则表达式的帮助,我正在处理用户在聊天中输入票号的情况。

我正在使用以下可能性和正则表达式 TTN-\d{1,4}?([0-9]{1,9})

可能的位数为 10,但有时用户不会包含前导零,因此我需要确保匹配最多 10 位数字的字符串;然而,我遇到的问题是,如果数字超过 10 位,它仍然会捕获。

我想与此处的后续匹配并捕获“TTN-”后面的数字

随机词 TTN-484424 随机词 - 我会捕获 4844254。效果很好。

TTN-0000846110 - 我会捕获 0000846110。效果很好。

嘿看看 TTN-0000844555 blah blah - 我会捕获 0000844555。效果很好。

随机字 TTN-000999999990980 随机字 - 我不想匹配此字符串,因为位数大于 10;因此,用户错误地输入了票号。

我一直在阅读正则表达式教程,并尝试使用“$”来表示字符串的结尾,但这不起作用,因为它的长度仍然持续。

如何表示正则表达式仅在字符串的数字 <= 10 时才开始匹配?

谢谢!

最佳答案

使用单词边界。

TTN-(\d{1,10})\b

\d{1,10} 匹配 1 到 10 位字符。\b 单词字符和非单词字符之间匹配的单词边界。

关于javascript - 正则表达式 - 如何匹配整个字符串并仅捕获具有一定长度的子组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33614355/

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