使用 JavaScript 替换字符串中的未知特殊字符



>我有一个字符串,它有一个特殊字符这被称为em-dash。我想在Windows和Linux中使用javascript从我的字符串中替换这个字符。

它在Windows中运行良好,我使用了这个

mystring.replace(/—/, "-");

有效,但在 Linux 中,em-dash 字符显示为带有问号的黑色菱形

如何匹配此字符并替换某些字符?

u2014 = 长划线 Unicode

let string = 'SampleTestcase—Temp';
if (string.match("u2014")) {
     console.log("YES ITS MATCHED and its Em-dash");
     string = string.replace("u2014", "-");
}
console.log(string);

我的预期输出是 SampleTestcase-Temp ;

另外,为什么 Linux 将 em-dash 显示为带有问号的黑色菱形,有时它显示为逗号?

只需跳过仅将 Unicode 传递给正则表达式参数的引号(在 // 之间),并使用g标志:

console.log('SampleTestcase———————Temp'.replace(/u2014/g, '-'));

最新更新