,则将值向上移动。
我使用pdftools
将一些PDF文档转换为TXT。这是输出的一部分(还不错)
REPÚBLICA DE CHILE PADRON ELECTORAL AUDITADO ELECCIONES PRESIDENCIAL, PARLAMENTARIAS y de CONSEJEROS REGIONALES 2017 REGISTROS: 2.421
SERVICIO ELECTORAL REGIÓN : ARICA Y PARINACOTA COMUNA: GENERAL LAGOS PÁGINA 1 de 38
PROVINCIA : PARINACOTA
NOMBRE C.IDENTIDAD SEXO DOMICILIO ELECTORAL CIRCUNSCRIPCIÓN MESA
AGUILERA SIMPERTIGUE JUDITH ALEJANDRA 13.638.826-6 MUJ PUEBLO DE TACORA S N VISVIRI GENERAL LAGOS 4M
AGUILERA ZENTENO PATRICIA ALEJANDRA 16.223.938-4 MUJ PUEBLO DE GUACOLLO S N CERCANO A GENERAL LAGOS 5M
AGUIRRE CHOQUE MARCOS JULIO 15.000.385-7 VAR CIRCUNSCRIPCION
CALLE TORREALBA DE VISVIRI
CASA N° 4 PUEBLO DE VISVIRI GENERAL LAGOS 7V
所以我正在这样做以清洁并将其转换为格式化的TSV:
test = read_lines("file.txt")
test2 = test[!grepl("REPu00daBLICA",test)]
test2 = test2[!grepl("SERVICIO",test2)]
test2 = test2[!grepl("NOMBRE",test2)]
test2 = test2[!grepl("PROVINCIA",test2)]
test2 = gsub("\.", "", test2)
test2 = gsub("(?<=[\s])\s*|^\s+|\s+$", "", test2, perl=TRUE)
,输出为:
ABRIGO PIZARRO PATRICIO ESTEBAN 16024716-9 VAR PUEB ALCERRECA GENERAL LAGOS 5V
ABURTO VELASCO ESTHER MARISOL 13005517-6 MUJ VILLA INDUSTRIAL GENERAL LAGOS 2M
ACEVEDO MONTT SEBASTIAN ANDRES 17829470-9 VAR CALLE RAFAEL TORREALBA N° 3 PUEBLO DE VISVIRI GENERAL LAGOS 3V
ACHILLO BLAS ADOLFO ARTURO 13008044-8 VAR VISURI GENERAL LAGOS 7V
我已经阅读了一些帖子,我不确定如何实施:
- 类似
gsub("(?<=[\s+])[0-9]", "t", test2, perl=TRUE)
的东西,这是替换多个空格,然后是一个数字,然后是数字 - 如何将损坏的线移至上一行的末端,例如上述示例中的第8行,该示例以多个空格开头。
修复(1)和(2)将返回以下内容:
ABRIGO PIZARRO PATRICIO ESTEBAN t 16024716-9 t VAR t PUEB ALCERRECA t GENERAL LAGOS t 5V
ABURTO VELASCO ESTHER MARISOL t 13005517-6 t MUJ t VILLA INDUSTRIAL t GENERAL LAGOS t 2M
(1)您可以将单词" var"one_answers" muj"用作拆分的键字:
x <- "AGUILERA SIMPERTIGUE JUDITH ALEJANDRA 13.638.826-6 MUJ PUEBLO DE TACORA S N VISVIRI GENERAL LAGOS 4M"
strsplit(x, "\s{2,}|\s(?=\bMUJ\b)|(?<=\bMUJ\b)\s|\s(?=\bVAR\b)|(?<=\bVAR\b)\s", perl = TRUE)
结果是:
[[1]]
[1] "AGUILERA SIMPERTIGUE JUDITH ALEJANDRA" "13.638.826-6" "MUJ"
[4] "PUEBLO DE TACORA S N VISVIRI" "GENERAL LAGOS" "4M"
也许不是最优雅的解决方案,但是它可以使用,如果您可以修改数据,则可以使用真正的钥匙词并确保它们是唯一的。
(2)一个简单的解决方案是检查行的长度,如果行太短