【发布时间】:2019-11-02 13:24:33
【问题描述】:
我想从字符串中提取数字,例如
这 3 个城镇有 1000 人。
得到一个像["1,000", "3"]这样的数组。
我从Justin in this question得到了以下匹配正则表达式的号码
^[+-]?(\d*|\d{1,3}(,\d{3})*)(\.\d+)?\b$
这对于检查它是否是一个数字很有用,但要让它在一个句子上工作,你需要删除“^”和“$”。
regex101 with start/end defined regex101 without start/end defined
如果没有定义开始和结束,您会得到一堆长度为 0 的匹配项,这些匹配项很容易被丢弃,但现在它也会用逗号分割任何数字。
如何使该正则表达式(或新的正则表达式)在句子中起作用,并且仍然可以找到其中带有逗号的数字。
奖励将不是所有长度为 0 的匹配项。
【问题讨论】:
标签: javascript regex