2016-07-19 84 views
1

我解析从包含这样的行法国水文数据库的文本文件:如何重音符号的文本转换为纯文本[R

Date Q (m3/s) Validité F. exp. Libellé Fréquence exp 

当R读取这些行要么read.csvreadLines,口音用代码转义以形成:

Date Q (m3/s) Validit\xe9 F. exp. Libell\xe9 Fr\xe9quence exp 

这些转义码可以防止简单的grepl命令。因此,例如:

grepl("Date", "Date Q (m3/s) Validit\xe9 F. exp. Libell\xe9 Fr\xe9quence exp") 

产生以下结果:

[1] FALSE 
Warning message: 
In grepl("Date", "Date Q (m3/s) Validit\xe9 F. exp. Libell\xe9 Fr\xe9quence exp") : 
input string 1 is invalid in this locale 

什么是对付这些转义代码,使我能够把简单的文本处理的最佳方式?

回答

1

试试这个:

namc <- readLines(con <- file('g:/filename.txt', "r", encoding='UTF-8')) close(con) cat(namc)

记得更改文件名和路径。您应该可以使用greplgsub在此之后清理它