2017-09-26 114 views
0

我正在转换正在从PDF文件中读取的文本。删除字符和组合字符串

特别是,我有一个字符向量,其中包含连字符(“ - ”),用于预制大纲,或将单词分隔为新行,但仅当发生时才会出现。例如:

text text text 123- 
456 text text.. 

我想要做的就是删除所有hypens和toghether粘贴这些话。

text text text 123456 
text text.. 

我开始尝试:

library(pdftools) 
library(tidytext) 
library(readxl) 
library(dplyr) 
setwd("~/Automation - Official Guazzete") 
path <- getwd() 
pdf_file <- file.path(path, "stecajni_postapki.pdf") 

test <- pdf_text(pdf_file) 

dput(tail(test)[1]) 
"10 јули 2017              Бр. 86 - Стр. 1\r\n    Стечајни постапки\r\n         СТЕЧАЈНИ ПОСТАПКИ\r\n       Основниот суд Скопје II – Скопје преку стечајниот\r\n      судија Вероника Станојевска и привремениот стечаен\r\n      управник Ѓорѓе Костов, објавува дека со Решение 2\r\n      Ст. бр. 841/17 од 16.6.2017 година, се отвора стечајна\r\n      постапка над должникот Друштво за производство, тр-\r\n      говија КБ ТРЕЈД Ќиро ДООЕЛ Скопје, со трансакцис-\r\n      ка сметка 300000000744414 при Комерцијална банка\r\n      АД Скопје со ЕДБ 403099419454 Скопје, ЕМБС\r\n      4854217 и единствен даночен број 4030003477097 и\r\n      приоритетна дејност на мало во неспецијализирани про-\r\n      давници претежно со храна и пијалаци... <truncated> 

从这里,我想:

test <- gsub("-", "", test) 

但这返回单独的数字。例如

没有一个字 - 123456

任何想法?

+0

尝试'粘贴(测试,崩溃=“”)'获得'“123456”'。 – LAP

回答

0

如果您在您的GSUB性格\n,它应该这样做

S <- "text text text 123- 
     456 text text" 
"text text text 123-\n456 text text" 

gsub("-\n", "", S) 
# "text text text 123456 text text" 
0

这微小的变化可能会解决您的问题。它会发现连字符后面跟有换行符并将其折叠。

test <- gsub("-\\n+", "", test) 

做不到这一点,你可能会定义一个函数,它取代元素[I]含“ - ”与自身和元素[I + 1],然后替换元素[I + 1]与NA或一些占位符,稍后将被删除。