如何使用正则表达式获取变换值。我已经尝试过,但不适用于所有情况:
var transform = "translate(97.4 12)";
var split = /translate\(\s*([^\s,)]+)[ ,]([^\s,)]+)/.exec(transform);
/*
it given following output,
split[1] = 97.4;
split[2] = 12;
*/
但是此正则表达式不适用于以下情况:
"translate(97.4, 12)";
"translate(97.4)";
"translate(97.4,12)";
如何使用通用方式获得那些情景?
答案 0 :(得分:2)
答案 1 :(得分:0)
尝试:
var transform = 'translate(97.4, 12)';
var reg = new RegExp(/translate\(\s*([0-9\.\,\s)]+)\)/g);
var value = htmlData.replace(reg, function (a, b, c) {
return b;
});
value.split(','); //return value is: [97.4, 12]
此外, 测试它的好尝试 https://www.regexpal.com/
非常好的和有用的正则表达式测试网站