我有一个包含"x²"的JS字符串。
问题:如何在 JavaScript 中从字符串中提取"2"并将其转换为数字?有什么方法可以删除指数前面的"^"吗?我已经试过了
string.replace("^","");"
或者我可以删除字符串的格式吗?
我也试过
parseInt(string.substr(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)。