我正在实施过滤功能。我使用:
定义字符串是否适合查询someString.IndexOf(someSearch, StringComparison.OrdinalIgnoreCase) >= 0
但有时(当然在非常罕见的情况下)值可能会像“aaa”或“ccc”一样,忽略语言会更方便用户使用。
答案 0 :(得分:1)
西里尔字母与拉丁字母之间没有确定的对应关系。西里尔字母es“с”与拉丁字母“c”完全不同,即使包含它们的任何字体可能都有相同的字形。在内部表示和字符级处理中,它们与任何两个不相关的字符完全不同。
您希望接受的方式,例如西里尔字母es“с”为拉丁字母“c”,你需要自己编码。但我认为这不会有用。相反,如果您的应用程序只需要拉丁字母,那么您的错误处理例程可以检查是否存在来自其他书写系统的字符,并告知用户。