【发布时间】:2021-03-09 23:46:00
【问题描述】:
我有这段代码可以帮助解析 unicode 以获得 emoji:
public string DecodeEncodedNonAsciiCharacters(string value)
{
return Regex.Replace(
value,
@"\\u(?<Value>[a-zA-Z0-9]{4})",
m =>
((char)int.Parse(m.Groups["Value"].Value, NumberStyles.HexNumber)).ToString();
);
}
所以我把我的代码这样写
DecodeEncodedNonAsciiCharacters("\uD83C\uDFCB\uD83C\uDFFF\u200D\u2642\uFE0F");
变成Console.WriteLine();,它给了我这个表情符号????????♂️所以我的问题是我怎样才能把它变成这个
"\uD83C\uDFCB\uD83C\uDFFF\u200D\u2642\uFE0F"
进入这个代码点
U+1F3CB, U+1F3FF, U+200D, U+2642, U+FE0F
以上代码点来自Emojipedia.org
【问题讨论】:
-
@"\\u(?<Value>[a-fA-F0-9]{4})"注意f和F -
帮我解决这个问题,我需要帮助将表情符号与此 json 文件从此处gist.github.com/oliveratgithub/… 匹配
-
所以我可以获得与该表情符号相关的名称,我知道它可以用 Json.Net 完成,但我不知道如何实现它
-
您似乎想将两个 surrogate 字符组合成一个 Utf-32。如果是你的情况,请看我的回答