我正在转换正在从pdf文件中读取的文本。
特别是,我有一个字符向量,其中包含连字符(“ - ”),用于预先形成音节,或将单词分隔为新行,但仅在数字出现时 。例如:
text text text 123-
456 text text..
我想要做的事情是删除所有的大肆宣传并粘贴这些词语。
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 :(得分: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"
答案 1 :(得分:0)
这种轻微的变化可能会解决您的问题。它会找到连字符后跟换行符并将其折叠的实例。
test <- gsub("-\\n+", "", test)
如果不这样做,你可能会定义一个函数,用自身和元素[i + 1]替换包含“ - ”的元素[i],然后用NA或一些占位符替换元素[i + 1],删除后面。