2017-05-09 56 views
0

我試圖解析一個PDF文件,我想在該行,前年底獲得不破字的輸入:如何刪除pdf文件中的分詞符和換行符?

text.pdf

"hello guys I ne- 
ed help" 

如何去除在「 - 」而行,以突破堅持的「需要」一起

兩個部分這是我的實際代碼:

reader = PDF::Reader.new(‘text.pdf’) 
reader.pages.each do |page| 
page.text.each_line do |line| 
    words = line.split(」 「) # => ["hello"], ["guys"], ["I"], ["ne-"], ["ed"], ["help"] 
    words.each do |word| 
     puts word 
    end 
end 

回答

0

您可以使用String#gsub

a = "hello guys I ne- 
ed help" 
#=> "hello guys I ne-\n" + "ed help" 
a.gsub(/-|\n/, '-' => '', "\n" => '') 
#=> "hello guys I need help" 

與您的代碼:

reader = PDF::Reader.new(‘text.pdf’) 
reader.pages.each do |page| 
    page.text.each_line { |line| line.gsub(/-|\n/, '-' => '', "\n" => '')} 
end 

或者,如果儀表板和新線元素總是在一起,他們一起代替:

a.gsub(/-\n/, '') 
#=> "hello guys I need help" 
+0

謝謝您的回答。我嘗試了第一個命題,並刪除了「 - 」,但我仍然在另一行上獲得了「ed」。可能是pdf中的換行符必須以不同的方式進行管理? – Orsay

+0

@Orsay你嘗試第二個嗎?雖然,我認爲它沒有多大差別 –

+0

是的,我嘗試了第二個,但它保持破折號和分行 – Orsay