更确切地说,我需要知道(如果可能的话)我是否可以找到给定字符串是否具有双字节字符.基本上,我需要打开一个弹出窗口来显示一个给定的文本,它可以包含双字节字符,如中文或日文.在这种情况下,我们需要调整窗口大小,而不是英文或ASCII.有人有线索吗?
我试图弄清楚如何检查一个字符串是否包含一个specfic表情符号.例如,查看以下两个表情符号:
自行车骑手:http: //unicode.org/emoji/charts/full-emoji-list.html#1f6b4
美国国旗:http://unicode.org/emoji/charts/full-emoji-list.html#1f1fa_1f1f8
骑自行车的是U+1F6B4美国国旗U+1F1FA U+1F1F8.
但是,要检查的表情符号是以这样的数组提供给我的,只有字符串中的数值:
var checkFor = new string[] {"1F6B4","1F1FA-1F1F8"};
Run Code Online (Sandbox Code Playgroud)
如何将这些数组值转换为实际的unicode字符并检查字符串是否包含它们?
我可以为自行车骑士工作,但是对于美国国旗,我很难过.
对于自行车骑士,我正在做以下事情:
const string comparisonStr = "..."; //some string containing text and emoji
var hexVal = Convert.ToInt32(checkFor[0], 16);
var strVal = Char.ConvertFromUtf32(hexVal);
//now I can successfully do the following check
var exists = comparisonStr.Contains(strVal);
Run Code Online (Sandbox Code Playgroud)
但由于多个代码点,这对美国国旗不起作用.
我需要转换Doublebyte字符.在我的特殊情况下,Shift-Jis可以更好地处理,最好使用标准的C++.
以下问题最终没有解决方法: MSVC上的双字节编码(std :: codecvt):无法识别前导字节
那么有没有人建议或参考如何使用C++标准处理这种转换?
我正在寻找一个能够直观地显示 html 结构、字符/单词和样式差异的 api。该工具还必须支持双字节字符,并且足够灵活,以便我将其添加到我现有的网站中,以便轻松显示比较结果。我目前正在使用组件软件 COM 实现,它不支持双字节字符,并且大约六年没有更新。
假设我用西里尔语写的"俄语"这个词.在Hex中,这将是以下的等价物:
Русский
Run Code Online (Sandbox Code Playgroud)
我的问题是:如何编写一个函数,它将从西里尔语中的"俄语"变为上面的十六进制值?这个相同的功能也可以用于单字节字符吗?