我有一个包含“x²”的JS字符串。
问题:如何从JavaScript中提取字符串中的“2”然后将其转换为数字? 有什么方法可以删除应该在指数之前的“^”吗? 我已经尝试了
string.replace("\^","");"
或者我可以删除字符串的格式吗?
我也试过
parseInt(string.substr(2));
答案 0 :(得分:2)
如果您的意思是"x²"
并希望将其转换为"x^2"
,那么这是一个微不足道的替代品:
str = str.replace(/²/g, "^2");
如果你想要处理这两者(还有一个³
),你可以做一个链式替换:
str = str.replace(/²/g, "^2").replace(/³/g, "^3");
...或使用回调:
str = str.replace(/[²³]/g, function(m) {
return "^" + String.fromCharCode(m.charCodeAt(0) - 128);
});
-128是²
(字符代码178)和2
(字符代码50)之间的字符代码差异,³
(179)和3(51)就在它们之后