質問: pdfファイル内の単語数を数える pdfファイルのword数を取得する方法wordの総数を取得したいほとんどのpdfファイルにはテキストレイヤーが埋め込まれていると思いますので、ocrは必要ありません。この課題は、サイズがわかっている科学論文を探すことから生まれました。 15000語ほとんどのモデレータの論文はpdfフォーマットで公開されています
回答: これは簡単なことではない難しい作業です。本当に正確な結果が欲しい場合は、pdfビューアの段落ごとにテキストファイルにコピーし、wc -wツールを使用して確認してください。その場合にpdftotextを使用しないのは、その理由は次のとおりです。数式も出力に含まれ、「単語」と見なされる可能性があります。 (あるいはpdftotextから得た出力を編集することもできます)。これが失敗するかもしれないもう一つの理由は見出しです:「4.3.2 foo bar」は3つの単語として数えられます。回避策は、[a-za-z]のうち、charで始まる単語を数えることだけです。だから私が普段やっていることは2段階のアプローチです: ユニークな単語のリストを取得し、内部に誤検知が多すぎるかどうかを確認します。 pdftotext foo.pdf - | tr " " "\n" | sort | uniq | grep "^[a-za-z]" > words スペルミスは単語として数えられないので、ここでは辞書を使用しません。 このwordリストを入手して、pdftotextの出力内でgrepしてください。 pdftotext foo.pdf - | tr " " "\n" | grep -ff words | wc -l これは1つのライナー内で実行できることはわかっていますが、その場合、最初のステップからのフィルター結果を簡単には見ることができませんでした。下記のmoiのコメントで述べられているように-fはあなたを助けるかもしれません(ありがとう)。