ms-word - 在 MS Word 文档中突出显示搜索词

标签 ms-word full-text-search highlighting

我们有一个项目,需要通过基于 Web 的界面提供对 Word 文档集合的搜索。客户希望在用户打开文档时突出显示搜索词。

有没有办法在打开文档时直接在 Word 中执行此操作?我们能想到的唯一替代方案是将 Word 文档转换为 HTML 并显示它。

仅作为背景介绍,我们目前使用 Windows SharePoint Services 进行文档搜索。

最佳答案

您可以使用 Word 的突出显示功能来做到这一点。但是,要使用该功能,您必须在服务器端或客户端上使用 Word 自动化。

用于突出显示搜索词的 VBA 脚本可能如下所示:

Sub Highlight(oDoc As Word.Document, term As String)

    With oDoc.Range.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Replacement.Highlight = True
        .Text = term
        .Replacement.Text = term
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With

End Sub

该脚本执行搜索和替换并对找到的文本应用突出显示。如果您对如何最好地自动化 Word 有任何疑问,例如在服务器环境中,请随时询问。

关于ms-word - 在 MS Word 文档中突出显示搜索词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/448830/

相关文章:

mysql - 为什么 Facebook 的智能搜索这么快

android - 在 Android 上的 TextView 中突出显示文本

php - Smith–Waterman 用于 PHP 中的字符串?

javascript - 我的 jquery 方法不起作用

Android:在 GridView 中禁用突出显示

vba - Word/VBA 应用程序的实际限制

web-services - WORD 和 PDF 到文本 Web 服务

ms-word - 没有 MS-FSSHTTP/COBALT 的 WOPI 实现

ms-word - 如何使用 Apache POI 从 MS word 文档的文本框中获取文本?

MySQL 电子邮件地址搜索列