如何查找多页文档中各关键词/短语出现的页码
多页文档查询关键短语出现页码的操作方法
一、Microsoft Word 操作步骤
- 打开目标文档,按下
Ctrl+F调出查找对话框 - 在查找输入框里填要查的关键短语
- 点对话框里的更多按钮,勾选「突出显示所有在该范围找到的项目」,范围选「主文档」
- 点查找全部,对话框底部会列出所有匹配结果,每一项后面括号里就是对应页码
- 要是批量处理多个关键词,能用上Word宏:
- 按下
Alt+F11打开VBA编辑器 - 插入模块,粘贴以下代码(把关键词列表换成你自己的):
Sub GetKeywordPages() Dim keywords As Variant, kw As Variant Dim doc As Document, rng As Range Set doc = ActiveDocument keywords = Array("关键词1", "关键词2", "关键短语1") ' 替换成你的关键词 For Each kw In keywords Set rng = doc.Content Debug.Print "关键词: " & kw With rng.Find .Text = kw .Forward = True .Wrap = wdFindStop Do While .Execute Debug.Print "页码: " & rng.Information(wdActiveEndPageNumber) Loop End With Next kw End Sub - 运行宏,在立即窗口就能看到每个关键词对应的所有页码
- 按下
二、PDF 文档操作步骤
1. 常用PDF阅读器(Adobe Acrobat、福昕阅读器等)
- 打开PDF文件,按下
Ctrl+F调出查找框 - 输入关键短语,点查找全部,右侧或底部会显示所有匹配结果,每一项都标着对应页码
- 部分阅读器支持导出查找结果,直接保存成包含关键词和页码的文本就行
2. 批量处理(Python脚本)
如果有大量关键词或PDF文件,用Python的pdfplumber库处理更高效:
import pdfplumber def get_keyword_pages(pdf_path, keywords): result = {kw: [] for kw in keywords} with pdfplumber.open(pdf_path) as pdf: for page_num, page in enumerate(pdf.pages, start=1): text = page.extract_text() if not text: continue for kw in keywords: if kw in text: result[kw].append(page_num) return result # 使用示例 pdf_path = "你的文档路径.pdf" keywords = ["关键词1", "关键短语1", "关键词2"] page_results = get_keyword_pages(pdf_path, keywords) for kw, pages in page_results.items(): print(f"{kw}: 出现页码 {', '.join(map(str, pages))}")
三、通用文本类文档(TXT、MD等)
- 用VS Code这类编辑器打开文档,按下
Ctrl+Shift+F调出全局查找 - 输入关键短语,查找结果会显示对应行号;如果文档有分页标记(比如特定分隔符),先查分页标记统计页码,再对应关键词位置;要是没有分页标记,就按每页行数计算页码
- 也能用Python脚本处理:先按分页规则拆分文档,再逐个检查关键词所在的页码
内容的提问来源于stack exchange,提问作者Dominykas Mostauskis
相关产品推荐
相关产品推荐

