代码之家  ›  专栏  ›  技术社区  ›  makerofthings7

与.NET框架默认值相比的Unicode字符串比较示例

  •  1
  • makerofthings7  · 技术社区  · 14 年前

    我在找一些例子 怎样 什么时候 聪明的人做字符串的Unicode比较,而不是框架默认值。

    由于许多人不使用来自其他文化的字符串,下面是一些有趣的比较示例。

    1. .ToUpper()
      • 小写土耳其语“i”转换为大写°(U+0130)
    2. 等于
      • 上面土耳其语示例的大写版本
    3. 比较句子中最后一个词的相等性
      • 希伯来语对一个句子中的最后一个字母的处理方式不同于阿拉伯语
    4. ... 其他示例。。。

    问题
    在Unicode世界中,什么比较比较是常见的?(请随意扩展语言示例)

    我应该在哪些情况下使用(或不使用)对区域性不敏感的比较?这似乎可以归结为“语言”或“非语言/(二进制)”操作。

    • 这与安全性和检查用户名/密码有什么关系。
    • 如何和 什么时候 在语言操作和非语言操作之间有选择吗?

    我特别感兴趣的是这将如何影响汉语和其他东方语言。

    工具书类
    在研究这个问题的时候,我发现了这些网站

    Joel on Software: What every developer should know about Unicode

    Strings In .NET

    1 回复  |  直到 14 年前
        1
  •  1
  •   James Manning    14 年前