Как читать PDF до определенной конечной строки? - PullRequest
0 голосов
/ 11 апреля 2019

Я делаю цикл для многих научных работ.Здесь я хочу извлечь из прочитанного документа содержимое.

Как я могу сделать так, чтобы R читал только до последней строки, где много точек, и указать в качестве конечной строки?как на картинке ниже:

[Числа] [Буквы] [Точки] [Число]

enter image description here

Если не многоточки, которые останавливаются и указывают как конец строки.

Например, у меня есть следующий код, но он не работает для других документов, потому что иногда имеют разные окончания.

if(((nrow(pdf[pdf$text == "References ." & pdf$element_id == '2',]) == 1) & !(exists("endline"))) == 1){

endline <- pdf$line_id[pdf$text == "References ." & pdf$element_id == '2']
   }

R читает весь документ и идентифицирует только до последнего, где многоточки.

1 Ответ

0 голосов
/ 11 апреля 2019

Это регулярное выражение должно помочь:

(\.+\s*\d+\n)(?!\d)

Пояснение:

(\.+\s*\d+\n) - точки и номер страницы (с дополнительными пробелами), за которыми следует символ конца строки

(?!\d) - отрицательный прогноз, что означает отсутствие цифр в начале следующей строки.

Отрицательный взгляд делает магию на обнаружение последнего вхождения шаблона.

Рабочий пример: https://regex101.com/r/gIrhxf/2

...