我有一个包含UTF-8字符列的R tibble。当我打印这个列的内容时,对于某个问题记录,一切看起来都很正常:
如果我将此字符串复制到Notepad++并转换为ANSI编码,我可以看到该字符串实际上包含一些额外的字符,这会导致问题:
一个部分有效的解决方案是将其转换为ASCII:
从UTF-8转换为UTF-8无法解决我的问题:
是否可能删除所有像上面那样的不可见字符,而不会丢失UTF-8编码? 也就是说: 如何将我的字符串转换为我在R中打印时看到的形式(没有隐藏部分)?
one two three
。然而,当我尝试在R中构建并发送到数据库的RDBMS查询中使用此字符串时,出现了问题。如果我将此字符串复制到Notepad++并转换为ANSI编码,我可以看到该字符串实际上包含一些额外的字符,这会导致问题:
one â€two‬ three
。一个部分有效的解决方案是将其转换为ASCII:
iconv(my_string, "UTF-8", "ASCII", sub = "")
,但是所有非ASCII字符都会丢失。从UTF-8转换为UTF-8无法解决我的问题:
iconv(my_string, "UTF-8", "UTF-8", sub = "")
。是否可能删除所有像上面那样的不可见字符,而不会丢失UTF-8编码? 也就是说: 如何将我的字符串转换为我在R中打印时看到的形式(没有隐藏部分)?