【问题标题】:Search for phrases in pdf command line在 pdf 命令行中搜索短语
【发布时间】:2012-08-30 12:15:23
【问题描述】:

我需要一种方法来在 C# 的 pdf 中搜索短语(多字串,例如“红球”)。
我找到了一种从C# 打开 pdf 文件并执行搜索的方法。但是,它会单独搜索每个单词,而不是作为短语搜索。有趣的是,如果我打开一个 pdf 文件并使用高级搜索,它将作为一个完整的术语而不是两个单独的词来搜索它,但它不会从命令行执行相同的操作。

我已经在网上进行了广泛的搜索,并尝试了我能想到的所有方法(添加引号、添加 \"、添加单引号、在单词之间使用 +, &, _, 等)。一定有办法这样做是因为它在 pdf 中工作,我只需要一种从命令行调用它的方法。有人可以帮忙吗?

这就是我所拥有的。这有效,但它单独搜索每个单词。所以它找到了"red ball", as well as "red", "ball," "reddening", and "balled"。我只想找到"red ball"

string strParams = " /A \"search=" + "red ball" + "\"" + fileDirectory + strFilePath + "\"";
System.Diagnostics.Process.Start("AcroRd32.exe", strParams);

【问题讨论】:

  • 您可能需要考虑一个 PDF 库,例如 PdfSharp
  • 谢谢。这听起来像是用于创建pdf。我想打开一个现有的 pdf 并执行搜索。

标签: c# string search pdf command-line


【解决方案1】:

搜索参数确实只针对单词列表,没有办法搜索词组(或超过32个字符):

Adobe Docs:

您只能搜索单个单词。您无法搜索字符串 字数

您可以尝试其他阅读器或library

【讨论】:

  • 我自己找到了这个解释,但是我可以在 pdf 中搜索短语但不能从命令行搜索短语是没有意义的。
【解决方案2】:

抱歉,您必须反编译文件,提取每个页面内容部分,解压缩并在每个部分中进行愉快的搜索。因此,您需要任何 PDF 库或自己编写。

【讨论】:

  • 我不需要搜索 pdf 文件(为此我使用了 iTextSharp,它运行良好)。我现在要做的是在我知道它有搜索词后打开 pdf。当我打开它时,我希望这些搜索词突出显示。
猜你喜欢
  • 2012-10-26
  • 1970-01-01
  • 2016-09-29
  • 1970-01-01
  • 1970-01-01
  • 2020-07-03
  • 2014-02-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多