Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从字符串中删除UTF16字符?_Javascript_C# - Fatal编程技术网

Javascript 如何从字符串中删除UTF16字符?

Javascript 如何从字符串中删除UTF16字符?,javascript,c#,Javascript,C#,我有一个包含特殊字符的字符串,如: HelloUTF-16和UTF-8“包含”相同数量的“字符”(确切地说:由于David Haim,可能代表一个字符的代码点),唯一的区别是它们如何编码为字节 在您的示例“我找到了问题的解决方案,它并没有涵盖所有utf-16字符,但删除了其中许多字符: var title = title.replace(/([\uE000-\uF8FF]|\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDDFF])/g, '*'); 在这里,我将

我有一个包含特殊字符的字符串,如:

HelloUTF-16和UTF-8“包含”相同数量的“字符”(确切地说:由于David Haim,可能代表一个字符的代码点),唯一的区别是它们如何编码为字节


在您的示例“我找到了问题的解决方案,它并没有涵盖所有utf-16字符,但删除了其中许多字符:

var title = 
title.replace(/([\uE000-\uF8FF]|\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDDFF])/g, '*');
在这里,我将所有特殊字符替换为一个“星”
*
。您还可以放置一个空字符串
'
,以删除它们


字符串末尾的
/g
的意思是删除所有出现的这些特殊字符,因为如果没有它,string.replace(…)可能只会删除第一个字符。

嗯,“UTF-8是一种字符编码,能够对Unicode定义的所有可能字符或代码点进行编码-那么一个字符怎么可能是“UTF16字符”而不是“UTF8字符”??你的榜样“唯一的区别是它们序列化时占用的字节数,但在javascript和C#中,一个字符在字符串上仅为一个字符。@piet.t在这里,它可以是两个UTF8字符,因为UTF16包含的UTF8字符多于UTF8字符。我看到了您的问题,它实际上与UTF8无关。该字符是UTF16代理项对。实际上不知道如何摆脱它们,也不知道你为什么想要它们。如果字体支持UTF,任何正确支持UTF的系统都应该能够呈现UTF。问题是,为什么您会关心“明显”字符的确切计数?它们包含相同数量的代码点,而不是相同数量的字符characters@DavidHaim谢谢你的更正-我试图澄清它。