前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ReplaceText

ReplaceText

作者头像
@阿诚
发布2020-08-31 14:17:24
5890
发布2020-08-31 14:17:24
举报
文章被收录于专栏:Panda诚

描述

使用其他值替换匹配正则表达式的流文件部分内容,从而更新流文件的内容。

属性配置

在下面的列表中,必需属性的名称以粗体显示。任何其他属性(不是粗体)都被认为是可选的,并且指出属性默认值(如果有默认值),以及属性是否支持表达式语言。

属性名称

默认值

可选值

描述

Search Value

(?s)(^.*$)

正则表达式,仅用于“Literal Replace”和“Regex Replace”匹配策略支持表达式语言:true

Replacement Value

$1

使用“Replacement Strategy”策略时插入的值。支持表达式语言:true

Character Set

UTF-8

字符集

Maximum Buffer Size

1 MB

指定要缓冲的最大数据量(每个文件或每行,取决于计算模式),以便应用替换。如果选择了“Entire Text”,并且流文件大于这个值,那么流文件将被路由到“failure”。在“Line-by-Line”模式下,如果一行文本比这个值大,那么FlowFile将被路由到“failure”。默认值为1 MB,主要用于“Entire Text”模式。在“Line-by-Line”模式中,建议使用8 KB或16 KB这样的值。如果将<Replacement Strategy>属性设置为一下其中之一:Append、Prepend、Always Replace,则忽略该值

Replacement Strategy

Regex Replace

PrependAppendRegex ReplaceLiteral ReplaceAlways Replace

在流文件的文本内容中如何替换以及替换什么内容的策略。

Evaluation Mode

Entire text

Line-by-LineEntire text

对每一行单独进行“替换策略”(Line-by-Line);或将整个文件缓冲到内存中(Entire text),然后对其进行“替换策略”。

  • Prepend
  • Append
  • Regex Replace
  • Literal Replace
  • Always Replace

在流文件的文本内容中如何替换以及替换什么内容的策略。Evaluation ModeEntire text

  • Line-by-Line
  • Entire text

对每一行单独进行“替换策略”(Line-by-Line);或将整个文件缓冲到内存中(Entire text),然后对其进行“替换策略”。

连接关系

名称

描述

sucess

已成功处理的流文件被路由到此关系。这包括已替换文本和未替换文本的流文件。

failure

无法更新的流文件被路由到此关系。

读取属性

没有指定。

写属性

没有指定。

状态管理

此组件不存储状态。

限制

此组件不受限制。

输入要求

此组件需要传入关系。

系统资源方面的考虑

Resource

Description

MEMORY

此组件的实例可能会导致系统资源的大量使用。多个实例或高并发性设置可能导致性能下降。

应用场景

使用正则表达式,来逐行或者全文本替换文件流内容,往往用于业务逻辑处理。

示例说明

1:全文本替换,配置如下

(?s)(^.*$)匹配所有值,选择正则匹配替换,全文本替换

流文件原内容:

替换后内容:

2:逐行替换:

文章有帮助的话,小手一抖点击在看,并转发吧。谢谢支持哟 (*^__^*)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Panda诚 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 描述
  • 属性配置
  • 连接关系
  • 读取属性
  • 写属性
  • 状态管理
  • 限制
  • 输入要求
  • 系统资源方面的考虑
  • 应用场景
  • 示例说明
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档