JavaScript正则表达式获取所有匹配项,类似于PHP的preg_match_all函数。

3

在JavaScript中是否可能像PHP中的preg_match_all一样做一些事情?

我想从字符串中获取两个数字:

var text = 'b463_z78';

将其分为两个不同的变量:
var bannerID = 463;
var zoneID    = 78;

输入字符串的格式是什么?一个例子不足以说明问题! - nhahtdh
2个回答

1

您可以使用这个

.match(/^b(\d+)_z(\d+)$/)

假设输入字符串严格遵循以下格式:以b开头,接着是数字,然后是下划线_,再接着是z,最后以数字结尾。
返回的数组中,第1个和第2个数字分别位于索引1和索引2。

1

要匹配字符串中的所有数字,您可以使用:

.match(/(?:\D*(\d+))*/);

所以,如果你有一个输入字符串为'b463_z78',你会得到一个包含'463''78'的数组,或者如果你有一个输入字符串为'1a2b3c4d',你会得到一个包含'1''2''3''4'的数组。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接