gpt4 book ai didi

javascript - 匹配不遵循字母表的数字并将它们放在捕获组中(全局)

转载 作者:行者123 更新时间:2023-11-30 09:32:07 27 4
gpt4 key购买 nike

例如,如果我有这样的文字:

"hello800 more text 1234 and 567"

它应该匹配 1234567,而不是 800(因为它遵循 helloo,这不是一个数字)。

这类似于编程语言所做的事情,例如在JavaScript中,abc123是一个变量,而50单独,不跟在文本后面,被当作一个数字.

请记住,我只想否定集合 [A-Za-z] 中的字符,而不是其他字符。例如,+33-33 仍应返回 33

我的第一次尝试是匹配一个 NOT 集:

[^A-Za-z]([0-9]+)

那根本行不通。

我的第二个尝试是反转字符串并使用负前瞻:

/([0-9]+)(?![A-Za-z])/g

仅当有 1 个数字时才有效。 1a1 不匹配(这很好),但 123a12 匹配(这很糟糕) .

最佳答案

你可以试试下面的正则表达式

\b\d+\b

您可以查看 demo这里

此外,如果你想匹配 +33,你也可以试试正则表达式

\b[+-]*\d+\b

demo

关于javascript - 匹配不遵循字母表的数字并将它们放在捕获组中(全局),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45658080/

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