gpt4 book ai didi

Javascript 正则表达式返回 # 字符,即使它没有被捕获

转载 作者:行者123 更新时间:2023-11-30 18:55:23 39 4
gpt4 key购买 nike

text = 'ticket number #1234 and #8976 ';
r = /#(\d+)/g;

var match = r.exec(text);

log(match); // ["#1234", "1234"]

在上述情况下,我想捕获 1234 和 8976。我该怎么做。此外,该句子可以有任意数量的“#”后跟整数。因此,假设最多出现两次,解决方案不应硬编码。

更新:只是好奇 。查看以下两个案例。

var match = r.exec(text); // ["#1234", "1234"]

var match = text.match(r); //["#1234", "#8976"]

为什么在第二种情况下我得到了#,即使我没有捕获它。看起来 string.match 不遵守捕获规则。

最佳答案

exec 多次以获取其余部分。

while((match = r.exec(text)))
log(match);

关于Javascript 正则表达式返回 # 字符,即使它没有被捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2283708/

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