gpt4 book ai didi

ruby-on-rails - 我正在尝试解析一些表格,它们有一些奇怪的类似字母表的非 ascii 字符

转载 作者:太空宇宙 更新时间:2023-11-03 17:45:44 24 4
gpt4 key购买 nike

RIZALTE

我有一些奇怪的角色,比如上面的那些。在 google 上,它可以工作,甚至可以在网络浏览器搜索功能上搜索相同的字符,但它在 ruby​​ 控制台上不匹配。

这是什么……?是否有某种表格可以将其替换为普通字母表?

最佳答案

这些是 Unicode 全角拉丁字符。例如,第一个是 U+FF32 , FULLWIDTH LATIN CAPITAL LETTER R. 您可以通过 Unicode normalization 将这些转换为“普通”拉丁字符.

如果您使用的是 Ruby 2.2 或更新版本,您可以使用内置的 String#unicode_normalize方法:

"RIZALTE".unicode_normalize(:nfkc)
# => "RIZALTE"

:nfkc 指的是规范化的类型,NFKC,这超出了这个答案的范围,但值得一读 Wikipedia article如果你想知道这里到底发生了什么。

对于早期版本的 Ruby,如果您使用的是 Rails,则可以使用 ActiveSupport::Multibyte::Chars#normalize方法,您可以通过 String#mb_chars 访问它:

"RIZALTE".mb_chars.normalize
# => "RIZALTE"

ActiveSupport 默认使用 NFKC。

关于ruby-on-rails - 我正在尝试解析一些表格,它们有一些奇怪的类似字母表的非 ascii 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37908555/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com