如何在robotframework中将10.000,50
之类的字符串转换为浮点数10000.50
我试试这个
ParseFloat
[Arguments] ${String}
Execute JavaScript parseFloat(${String})
Replace
[Arguments] ${str}
Execute JavaScript ("" +${str}).replace(/\\./g, "").replace(/,/g, ".")
但没有得到我预期的结果
答案 0 :(得分:1)
使用JavaScript,您可以使用String.prototype.replace()删除所有.
,然后用点替换唯一的,
。最后返回Number.prototype.toFixed()值:
String.prototype.toFloat = function() {
var n = +this.replace(/\./g, '').replace(/,/, '.');
return n.toFixed(2);
}
var n = '10.000,50'.toFloat();
console.log(n);

注意:如果字符串不是有效数字,String.prototype.toFloat()
函数可以返回NaN
。
答案 1 :(得分:0)
删除.
个字符,并将,
替换为.
。 parseFloat
和你的完成。
function strToFloat(str) {
return parseFloat(str.replace(/\./ig,'').replace(/,/ig,'.'))
}
console.log(strToFloat("10.000,50"))