【问题标题】:I just want to replace £ with £ in javascript / node我只想在javascript / node中用£替换£
【发布时间】:2021-09-30 13:59:03
【问题描述】:

这是一个愚蠢的简单问题。 我正在使用节点中的请求从站点中提取一些内容,并且井号显示为 Â £。

页面编码问题,我想。我已经尝试了所有方法,例如更改页面上的字符集元标记、编码和解码传入代码、使用 iconv 解码传入响应。我尝试过的很多东西。都失败了。

所以我最后的最后尝试是将 £ 替换为 £

我尝试了很多变体

string.replace(/£/g, '£')

但这只是在我的输出代码中将 £ 替换为 £。 有没有办法实现这个听起来很简单的事情?

谢谢。

【问题讨论】:

  • This could help。我同意这是页面的元配置。 <head>有什么页面?
  • 我尝试过 iso-8859-1、UTF-8 和 Windows-1252。 Windows-1252 和 iso-8859-1,问题是一样的。 UTF-8 使情况变得更糟。 £。
  • 您是否介意使用Buffer.from(string) 检查字符串字节。这应该显示组成字符串的字符以及隐藏不可见字符的位置
  • 对我来说意义不大,但这里有一个例子。 。对不起,我搞砸了。那是在我完全删除£之后。这是正确的。
  • 我错了,字符串是干净的。 Buffer.from([0xc2, 0xa3, 0x36, 0x31, 0x35, 0x2e, 0x38, 0x38]).toString('utf8') C2A3 是磅字符字节表示。我无法复制设置<meta charset="utf-8">

标签: javascript node.js


【解决方案1】:

您可以简单地在字符串替换中删除 £,然后使用 intl.NumberFormat 再次放置

let x = string.replace(/£/g, '')
console.log(new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(x));
// expected output: "123.456,79 €"

【讨论】:

  • op 想用£ 替换£ 而不是用£ 替换,重新阅读问题
  • 不要认为这无论如何都会起作用。这是我试图放置英镑符号的文本块,而不仅仅是货币价值。感谢您的回复。
猜你喜欢
  • 2017-11-18
  • 2018-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多