1

我们最近有一个用户输入英文文本,但它似乎是在为西里尔文设置的计算机上完成的,因为某些字母(例如“a”)实际上是西里尔小写字母 A,而不是拉丁小写字母 A。

我认为规范化会将西里尔文转换为拉丁文等价物,但事实并非如此(我猜它们只是在显示方式上等价,而不是在含义上)。

这是一个常见问题吗 - 为西里尔文设置计算机的用户可能正在写英文,但使用的是西里尔字母?

一般来说,什么是发现这一点并适当转换的安全方法?

4

1 回答 1

0

要检测西里尔字母,只需使用正则表达式匹配 [\p{IsCyrillic}]。更通用的方法是搜索任何非拉丁字符。那些你有匹配的,你需要用它们的拉丁对应物替换字符。

于 2012-09-03T16:01:58.170 回答