以下情况:
我有一个格式如下的字符串:"4.297 GB (4,613,734,400 bytes)"
我只想提取括号内的数字。
该示例将为:4613734400。
我现在在regexr上弄弄了一个小时,以找出正确的Regex,但无法做到。
我尝试过什么:
我当然通过Google搜索和搜索。到目前为止,我得到的最接近的是使用以下正则表达式:/\((.*?)\)/
它与括号内的数字和字符串匹配。但是我只需要数字。
你能帮我吗?
答案 0 :(得分:1)
您可以分2个步骤进行操作:
首先,您使用正则表达式(?<=\()([^)]+)(?=\))
找到括号的内容,然后使用正则表达式/\D+/g
替换所有非数字:并替换""
var text = "4.297 GB (4,613,734,400 bytes)";
var re = /(?<=\()([^)]+)(?=\))/g;
var match;
do {
match = re.exec(text);
if (match) {
console.log(match[1].replace(/\D+/g,""));
}
} while (match);