2

我试图将日语字符串向量(最初从逗号分隔的文件中导入)与从 Mac OSX 下的文件夹中提取的文件名列表进行匹配。

向量中的一个元素是a

> a
[1] "立ち上げる.mp3"

文件名中的相应元素是b

> b
[1] "立ち上げる.mp3"

问题是它们在 R 中在逻辑上并不相等:

> a == b
[1] FALSE

我已经发现这是日本“dakuten”字符的代理对出现的问题(即通过添加额外点从け扩展的げ字符)。因此,它们实际上彼此不同:

> iconv(a, "latin1")
[1] "ç«\u008bã\u0081¡ä¸\u008aã\u0081\u0092ã\u0082\u008b.mp3"
> iconv(b, "latin1")
[1] "ç«\u008bã\u0081¡ä¸\u008aã\u0081\u0091ã\u0082\u0099ã\u0082\u008b.mp3"

> nchar(a)
[1] 9
> nchar(b)
[1] 10

如何转换这两个版本的相同日文字符,以便它们可以使用 R 进行有效匹配(即它们应该相同)?

4

1 回答 1

1

有一个开源的桥库可以调用 ICU 库RUnicode。在 Mac OS X 上,您可以将搜索键标准化为 NFD(Mac OS X 样式)。

它将其他日文字母标准化,如全角和半角片假名,这可能会或可能不会满足您的目的。

于 2017-11-13T07:15:47.287 回答