我在下面有以下字符串示例:
rotate(0deg)
rotate(12.5deg)
rotate(360deg)
rotate(15.09deg)
我只想提取数字:
0
12.5
360
15.09
字符串中的静态部分如下:
起点。:
rotate(
结局:
deg)
我将如何在javascript中执行此操作?
答案 0 :(得分:1)
您可以使用此正则表达式:
/\brotate\((\d+(?:.\d+)?)(?=deg\))/g
并使用捕获组#1作为您的号码。
<强>代码:强>
var re = /\brotate\((\d+(?:.\d+)?)(?=deg\))/g;
var m;
var matches=[];
while ((m = re.exec(input)) !== null) {
if (m.index === re.lastIndex)
re.lastIndex++;
matches.push(m[1]);
}
console.log(matches);
答案 1 :(得分:1)
尝试使用Number()
,.replace()
与RegExp
/.*\(|deg\)$/g
var arr = ["rotate(0deg)",
"rotate(12.5deg)",
"rotate(360deg)",
"rotate(15.09deg)"
];
var res = arr.map(function(n) {
return Number(n.replace(/.*\(|deg\)$/g, ""))
});
console.log(res)
&#13;
答案 2 :(得分:0)
检查此正则表达式:(\d*\.?\d+)