0

javascript 是否可以使用 RegEx 反向引用创建多个新变量?就像是:

var temp = fileName.replace(new RegExp( "(^.)(.*)(_.*)(-.*)", "i" ),"\$1\$2\$3\$4");
var first = $1;
var forth = $4;

在 perl 我会做这样的事情:

$uprate =~ /(^.)(.*)(_.*)(-.*)/$1 $2 $3 $4/;

$first = $1;
$forth = $4;
4

1 回答 1

3

尝试使用 Javascript 字符串的match方法。它将返回一个包含所有匹配组的对象。

var matches = fileName.match(/(^.)(.*)(_.*)(-.*)/i);
var first = matches[1];
var fourth = matches[4];

如果字符串与正则表达式不匹配,则match 方法将返回null,因此请务必对其进行测试,除非您确定它会成功。

于 2013-03-09T02:58:23.003 回答