没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2019-11-12 09:52:15.470|阅读 1352 次
概述:如果要在查找和替换过程中保留以“&”开头的元字符,则可以使用FindReplaceOptions.PreserveMetaCharacters属性。本文将介绍在Aspose.Words中使用元字符查找和替换文本。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
Aspose.Words For .Net是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。此外,API支持所有流行的Word处理文件格式,并允许将Word文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。
接下来我们将进入“查找和替换”的介绍,在Aspose.Words中使用元字符查找和替换文本。
>>Aspose.Words for .NET更新至最新版v19.11,欢迎下载体验
Aspose优惠进行时——购买Aspose系列产品有机会获得iPhone 11等惊喜豪礼!更多活动详情可哦~
如何在替换期间保留元字符
如果要在查找和替换过程中保留以“&”开头的元字符,则可以使用FindReplaceOptions.PreserveMetaCharacters属性。下面的代码示例演示如何查找文本并将其替换为具有元字符的HTML。
//文档目录的路径。
string dataDir = RunExamples.GetDataDir_FindAndReplace();
string html = @"“Some Text”";
//初始化文档。
Document doc = new Document();
//使用文档构建器向文档添加内容。
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Write("{PLACEHOLDER}");
var findReplaceOptions = new FindReplaceOptions
{
ReplacingCallback = new FindAndInsertHtml(),
PreserveMetaCharacters = true
};
doc.Range.Replace("{PLACEHOLDER}", html, findReplaceOptions);
dataDir = dataDir + "ReplaceHtmlTextWithMetaCharacters_out.doc";
doc.Save(dataDir);public sealed class FindAndInsertHtml : IReplacingCallback
{
ReplaceAction IReplacingCallback.Replacing(ReplacingArgs e)
{
// 这是一个Run节点,其中包含开始或完全匹配。
Node currentNode = e.MatchNode;
//创建Document Buidler并插入MergeField
DocumentBuilder builder = new DocumentBuilder(e.MatchNode.Document as Document);
builder.MoveTo(currentNode);
builder.InsertHtml(e.Replacement);
currentNode.Remove();
//向替换引擎发出信号,表示什么都不做,因为我们已经完成了所有想要做的事情。
return ReplaceAction.Skip;
}
}使用元字符替换文本
Range.Replace方法支持搜索模式和替换字符串中的中断。您需要使用特殊的元字符来指定分隔符:&p代表段落分隔符,&b代表分节符,&m代表分页符,&l代表手动换行符。下面的代码示例显示了如何替换包含段落和分页符的文本。
// 初始化文档。
Document doc = new Document();
// 使用文档构建器向文档添加内容。
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Writeln("This is Line 1");
builder.Writeln("This is Line 2");
var findReplaceOptions = new FindReplaceOptions();
doc.Range.Replace("This is Line 1&pThis is Line 2", "This is replaced line", findReplaceOptions);
builder.MoveToDocumentEnd();
builder.Write("This is Line 1");
builder.InsertBreak(BreakType.PageBreak);
builder.Writeln("This is Line 2");
doc.Range.Replace("This is Line 1&mThis is Line 2", "Page break is replaced with new text.", findReplaceOptions);
dataDir = dataDir + "MetaCharactersInSearchPattern_out.docx";
doc.Save(dataDir);下面的代码示例显示如何用新的段落分隔符替换某些段落分隔符以及如何用分节符替换自定义文本标记。
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Font.Name = "Arial";
builder.Writeln("First section");
builder.Writeln(" 1st paragraph");
builder.Writeln(" 2nd paragraph");
builder.Writeln("{insert-section}");
builder.Writeln("Second section");
builder.Writeln(" 1st paragraph");
FindReplaceOptions options = new FindReplaceOptions();
options.ApplyParagraphFormat.Alignment = ParagraphAlignment.Center;
// 将“ section”一词后的每个段落加倍,添加下划线并使其居中。
int count = doc.Range.Replace("section&p", "section&p----------------------&p", options);
// 插入分节符而不是自定义文本标签。
count = doc.Range.Replace("{insert-section}", "&b", options);
dataDir = dataDir + "ReplaceTextContaingMetaCharacters_out.docx";
doc.Save(dataDir);还想要更多吗?您可以点击阅读【2019 · Aspose最新资源整合】,查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询。
如果您对Aspose有任何需求和疑难,记得扫描下方二维码告诉我们哦~

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn




大型SaaS系统的自动化测试常常受制于界面变化快、结构复杂、加载机制多变等因素。从元素识别到脚本管理,SmartBear TestComplete帮助Salesforce建了可靠的自动化测试体系。
BarTender 标签管理系统,正是帮助企业轻松实现 GS1 标准化标签设计、编码生成与信息联动的强大工具。
Parasoft C/C++test 是一款功能强大的 C/C++ 软件测试工具,集成了静态代码分析、单元测试、集成测试和覆盖率分析等功能,单元测试作为其关键功能之一,为了适配多样化的目标部署环境,C/C++test 设计了灵活的测试结果收集机制。通过Socket通讯方式来收集单元测试结果,从而扩展其测试覆盖范围与应用场景。
Parasoft C/C++test作为一款功能全面的自动化代码质量保障工具,为C/C++开发者提供了静态分析、单元测试和运行时错误检测等核心功能。通过将其与轻量级且广受欢迎的VScode编辑器集成,开发团队可以在熟悉的编码环境中实时获得代码质量反馈,有效提升开发效率与代码可靠性。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营