如何确定我的字符串是否包含"微"Unicode字符?

Chr*_*ris 4 c# unicode

我有一个带有实验室数据的Excel电子表格,如下所示:

µg/L (ppb)
Run Code Online (Sandbox Code Playgroud)

我想测试希腊字母"μ"的存在,如果发现我需要做一些特别的事情.

通常,我会写这样的东西:

if ( cell.StartsWith(matchSequence) ) { 
//.. <-- universal symbol for "magic" :)
}
Run Code Online (Sandbox Code Playgroud)

我知道框架中有一个Encoding API,但是我应该只将它用于这个边缘情况还是仅仅从字符映射中复制希腊微符号?

我如何测试这个unicode角色的存在?角色地图看起来像一个"便宜"的修复,以后会咬我(我为一家跨国公司工作).

我想做一些可维护的东西,而不只是一些疯狂的数学 - 巫毒转换,只适用于这种边缘情况.

我想我在这里要求最佳实践建议.

谢谢!

Jon*_*eet 12

您需要计算出您感兴趣的unicode字符,然后您可以在带有转义序列的代码中表示它.

例如,μ是U + 00B5,所以你只需要:

if (text.Contains("\u00b5"))
Run Code Online (Sandbox Code Playgroud)

您可以从charmap或Unicode代码图表中找到Unicode值.


Vin*_*jip 9

microμ 的Unicode代码点是U + 00B5,不同于"希腊字母mu"μ,它位于U + 03BC.所以你可以使用"\ u00b5"找到它,也可能同样寻找"\ u03bc" - 它们看起来一样,所以创建电子表格的人可能使用了错误的!