Try the following:
gsub("(\\d)-(\\d)", "\\1\\2", "530000101378-659")
matches -
between two numbers and replaces it with the numbers. This will not remove -
located elsewhere.
()
- parentheses indicate a capture group
\\d
- number
(\\d)-(\\d)
- 1st capture group is a number before "-". 2nd capture group is a number after "-"
\\1 - \\9
reference the captured groups, we have two in this example.
test <- c("530000101378-659", "2-53", "2777-a", "brb - 27")
gsub("(\\d)-(\\d)", "\\1\\2", test)
#output: [1] "530000101378659" "253" "2777-a" "brb - 27"
EDIT: this does not work on your PDF since it is rendered as it is (check Mike Stanley answer)
even if we do:
test = gsub("[\r\n]", "", test)
test = gsub("(\\d)-.*?(\\d)", "\\1\\2", test)
replacing: - and any number of characters up to the first next number, we will not get 100% recovery:
test[4]
"....со жиро-сметка бр. 5300001013786.7.2017 годи-659, која се води в..."
Here is a workaround:
test <- pdf_text(pdf_file)
test = gsub("[\r\n]", " ", test)
list = strsplit(test, " {2,}") #split anywhere where there are 2 or more consecutive spaces - hopefully only between two paragraphs (if not the output wont make much sense)
resi = lapply(list, function(x) {
unl = unlist(x)
len = length(x)
uneven = seq(from = 1, to = len , by =2)
even = seq(from = 2, to = len , by =2)
uneven = unl[uneven]
even = unl[even]
uneven = paste(uneven, collapse = " ")
even = paste(even, collapse = " ") #intentionally leave a space between them, one could even use something that is not expected to occur in the document like "frafrafra" and use that in the gsub call later as gsub("(\\d)-frafrafra(\\d)", "\\1\\2", resi)
return(cbind(uneven, even))
}) #separate even from uneven rows
resi = unlist(resi)
resi = gsub("(\\d)- (\\d)", "\\1\\2", resi) #clean numbers
resi = gsub("(\\b)- (\\b)", "\\1\\2", resi) #clean words
resi[8] # instead of 4 since we split even and odd rows
[1] "10 јули 2017 Извод од Решението да се објави во „Сл. весник на РМ“ и на
огласната табла на судот. Се налага на Прокредит банка АД Скопје и на Охридска
банка АД Охрид како институција што вршеле платен промет за субјектот, по
приемот на ова Решение доколку на жиро-сметката на субјектот се наоѓаат средства
и тие да се префрлат на жиро-сметка на Буџетските средства на РМ – Трезорска
сметка при НБРМ на трансакциона сметка 10000000063095, сметка на Буџетски
корисник бр. 630010001963019, приходна шифра (34168) ___________ Против
погоренаведеното Решение, доверителите имаат право на жалба преку овој суд до
Апелациониот суд во Гостивар, во рок од 8 дена од објавувањето на Решението во
„Сл. весник на РМ“. По правосилноста на Решението, должникот ќе се брише од
Трговскиот регистар што се води при Централниот регистар на РМ – Регионална
регистрациона канцеларија – Тетово. (34165) __________ гледување на грозје, со
трансакциски сметки број 200000036020069 во Стопанска банка АД Скопје, број на
постапка над стечајниот должник Друштво за трговија на големо и мало и услуги
АНИТОМ ДООЕЛ увоз-извоз Гостивар, со жиро-сметка бр. 530000101378659, која се
води во Охридска банка АД Скопје, со ЕДБ 4007011510476 и ЕМБС 6677754.
Стечајната постапка не се спроведува поради немање имот и се заклучува. Против
погоренаведеното Решение, дозволена е жалба преку Основниот суд во Гостивар до
Апелациониот суд во Гостивар, во рок од 8 дена од денот на објатано од денот на
објавувањето на Решението во „Службен весник на Република Македонија“, да ги
пријават (34166) __________ на подвижни предмети и права на должникот, како и
разлачните права на недвижностите на должникот што не се запишани во јавните
книги и разлачните права на недвижностите на должникот што се запишани во
јавните книги, своите разлачни права на подвижните предмети и на правата на
должникот што се запишани во регистрите во кои тие предмети, односно права се
запишани да ги пријават кај стечајниот управник во рок од 15 Седницата на
Собранието на доверители ќе се одржи во Основниот суд во Велес на ден 14.7.2017
година, во 10:30 часот, во судница бр. 7 на II кат, на Осна кои предмети постои
разлачно право, начинот и основот на засновање на тоа право, како и средствата
за ДНЕВЕН РЕД своите обврски што ги имаат спрема должникот да ги исполнат на
стечајниот управник. Се закажува рочиште за испитување и утврдување (34167)
__________ ца бр. 3 во Основниот суд во Штип. Се закажува Собрание на доверители
на кое врз основа на извештајот на стечајниот управник, ќе се одлучува за
натамошниот тек на стечајната постапка (Извештајно собрание) за 12.10.2017
година со почеток во 12:00 часот, во судница бр. 3 во Основниот суд во Штип.
Отворањето на стечајната постапка да се запише во Трговскиот регистар при
Централниот регистар на РМ, во јавните книги во кои се запишани правата врз
недвижностите и во други соодветни регистри. Ова Решение да се објави на
огласната табла на Основниот суд во Штип и во „Службен весник на РМ“.
However because of this the first page (resi[1] and resi[2]) is messed up, since it has only one paragraph:
resi[1]
[1] "10 јули 2017 Стечајни постапки Основниот суд Скопје II – Скопје преку
стечајниот управник Ѓорѓе Костов, објавува дека со Решение 2 постапка над
должникот Друштво за производство, трка сметка 300000000744414 при Комерцијална
банка 4854217 и единствен даночен број 4030003477097 и давници претежно со храна
и пијалаци и тутун. ње имот и се заклучува. регистар на РМ, во „Службен весник
на РМ“ и на огласОд Основен суд Скопје II – Скопје. __________ судија Артан
Лимани, објавув....
Hopefully you have the tools now to overcome this.