MyWord
private void btnSearch_Click(object sender, EventArgs e)
{
// 清楚文档中的高亮显示
ClearMark();
lvSearchResult.Items.Clear();
if (string.IsNullOrWhiteSpace(tbSearchText.Text))
{
return;
}
// 按段落检索
Word.Document currentDocument = Globals.ThisAddIn.Application.ActiveDocument;
if (currentDocument.Paragraphs != null &&
currentDocument.Paragraphs.Count != 0)
{
foreach (Word.Paragraph paragraph in currentDocument.Paragraphs)
{
MatchCollection mc = Regex.Matches(paragraph.Range.Text, tbSearchText.Text.Trim(), RegexOptions.IgnoreCase);
if (mc.Count > 0)
{
foreach (Match m in mc)
{
try
{
int startIndex = paragraph.Range.Start + m.Index;
int endIndex = paragraph.Range.Start + m.Index + m.Length;
Word.Range keywordRange = currentDocument.Range(startIndex, endIndex);
// 获取上下文信息
// 获取前两个单词的位置(如果有)
startIndex = GetStartPositionForView(paragraph, m, startIndex);
// 获取后两个单词的位置(如果有)
endIndex = GetEndPositionForView(paragraph, m, endIndex);
// 在ListView中展示检索的关键字以及其上下文
Word.Range range = currentDocument.Range(startIndex, endIndex);
ListViewItem item = new ListViewItem(range.Text);
item.Tag = keywordRange;
lvSearchResult.Items.Add(item);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
}
}
分享到:
相关推荐
**正则表达式调试工具——Regex Match Tracer详解** 在编程和数据分析中,正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它能够高效地进行字符串匹配、查找、替换等操作。然而,由于其...
Regex Match Tracer是一款强大的正则表达式测试工具,专为开发者和数据处理人员设计,用于调试和验证正则表达式的正确性。它提供了一个直观的界面,帮助用户理解正则表达式的匹配过程,从而提高工作效率。 正则...
Regex Match Tracer v2.1 破解版
测试正则表达式是否写对的工具,很好用,特别适合新手
var match url match regex ; if typeof match "undefined" && null match { host match[1]; } return host; }"> 1 原生JavaScript实现字符串长度截取 function cutstr str len { var temp;...
Regex Match Tracer 是一个专为正则表达式设计的验证工具,它帮助开发者和用户更直观地理解正则表达式的匹配过程,确保正确地编写和调试正则表达式。 正则表达式的基本概念: 1. **字符集**:包括基本的字母、数字...
Regex Match Tracer 2.0.exe
看到本站下本软件要5分,所以上传!内含含正则教程,用MTracer 2.1.msi安装后将"将该目录文件考到安装目录"并输入内含的注册码
正则表达式工具 Match Tracer 是一款用来编写和测试正则表达式的工具软件。 本软件通过可视化的界面,可以协助你快速、正确地写出复杂的正则表达式。 主要功能: 根据正则表达式语法,彩色显示表达式,使表达式...
标题“Regex+Match+Actor”和描述中的关键词“正则表达工具”、“包含多种匹配方式”、“可分组匹配”揭示了这个软件是关于正则表达式(Regular Expression)的,它提供了一种强大而灵活的方式来处理文本字符串,...
Regex Match Tracer 2.0 是一个专为正则表达式爱好者和开发者设计的工具,它能帮助用户更好地理解和调试正则表达式。 该工具的主要功能包括: 1. **实时匹配**:在输入正则表达式和测试文本后,Regex Match Tracer...
1. **匹配函数**:如`matchRegex`和`matchRegexAll`,分别用于获取第一个匹配项和所有匹配项。它们返回的是一个Maybe或[Match]类型的值,方便处理未匹配和多匹配的情况。 2. **替换函数**:如`subRegex`和`replace...
Match match = regex.Match("123-45-6789"); ``` - `Matches()`: 返回一个 `MatchCollection`,包含了所有匹配项。 ```csharp MatchCollection matches = regex.Matches("123-45-6789, 987-65-4321"); ``` - ...
Regex Match Tracer是一款正则表达式测试工具,内置替换模式、分割模式与扩展模式。现在官方已经发布了这个免费版本,匹配无限制使用。MTracer.exe(主程序)MTracerWeb.ocxstdplgin.dllUninstall
`std::regex_match`会检查整个字符串是否完全符合模式,而`std::regex_search`则可以在字符串的任何位置找到匹配的部分。 ```cpp std::string input = "123abc456"; if (std::regex_match(input, numberRegex)) { ...
1. 匹配:`boost::regex_match`、`boost::regex_search`和`boost::regex_iterator`分别用于检查整个字符串、子串以及迭代器范围内的匹配。 2. 替换:`boost::regex_replace`函数可以将匹配的文本替换为指定的字符串...
2. **匹配器(Matcher)**:`std::regex_match` 和 `std::regex_search` 是两种常用的匹配器,分别用于判断整个字符串是否匹配和字符串中是否存在匹配部分。 3. **迭代器(Iterator)**:`std::sregex_iterator` 和...
RegexMatch正则表达式测试软件是一款专为程序员和IT专业人士设计的工具,它允许用户方便地测试和调试他们的正则表达式。正则表达式(Regular Expression)是一种强大的文本处理工具,广泛应用于数据验证、搜索替换、...
`regex_match`检查输入的字符串是否完全匹配正则表达式,而`regex_search`则在字符串中查找是否存在符合正则表达式的部分。 3. **迭代器接口**:`regex_iterator`和`regex_token_iterator`允许你遍历输入字符串中...
Regex Match Tracer 是一款协助编辑,测试正则表达式的工具,尤其对于长表达式。目前官方新版本已完全免费,并且修正了bug,提升了效率。官网地址:http://www.regexlab.com/ 。