跳到主要内容 跳到补充内容

ReplaceRegExGroup - 脚本和图表函数

ReplaceRegExGroup() 在替换输入字符串和指定的复合正则表达式模式之间的一个或多个匹配后,返回一个字符串。取代匹配文本的文本在 to_str 参数中指定。函数从左到右运行,但如果指定一个负 occurrence 值,函数将从右到左读取。

该函数执行大小写敏感的正则表达式操作。您也可以用变种 ReplaceRegExGroupI() 来作为替代,执行不区分大小写的正则表达式操作。

语法:  

ReplaceRegExGroup (text, regex, to_str, group [, occurrence])

返回数据类型: 字符串

参数
参数 描述
text 输入字符串文本,您希望用 to_str 中的新文本全部或部分替换该文本。
regex 定义何时替换文本的正则表达式。该参数与 text 参数之间的匹配将被替换。
to_str 您要用来替换 text 中现有内容的新文本。
group

在复合正则表达式的情况下,组的编号。

如果正则表达式只包含一个组,请使用 ReplaceRegEx() 函数代替。替代方法是使用 ReplaceRegExGroup()group 值为 0

您可以指定一个负 group 值,从右向左搜索匹配项。

occurrence

要替换为新文本的匹配项(输入文本与正则表达式之间)的编号。

这是可选参数。如果省略,默认值为 0。当使用值为 0 或省略参数时,textregex 之间的所有匹配结果都会被替换为 to_str

如果要从右向左识别匹配项,可以指定一个 occurrence 负值。

函数示例
示例 结果
ReplaceRegExGroup('abc123','([a-z])([0-9]+)','x',0) 返回 abx(替换完全匹配)。
ReplaceRegExGroup('abc123','([a-z])([0-9]+)','x',1) 返回 abx123(只替换匹配中的第一组)。
ReplaceRegExGroup('abc123','([a-z])([0-9]+)','x',2) 返回 abcx(只替换匹配中的第二组)。
ReplaceRegExGroup('abc123abc123','([a-z])([0-9]+)','x',1,2) 返回 abc123abx123。输入文本的第一组与正则表达式模式之间有两个匹配项。不过,只有第二次出现时才会被替换。
ReplaceRegExGroup('ABC123ABC123','([a-z])([0-9]+)','x',1) 返回 ABC123ABC123。换句话说,没有文本被替换。这是因为该函数区分大小写,且不使用该函数区分大小写的变体。
ReplaceRegExGroupI('ABC123ABC123','([a-z])([0-9]+)','x',1) 返回 ABx123ABx123。在本例中,由于使用了不区分大小写的函数变体 ReplaceRegExGroupI(),所以进行了文本替换。

适用场景

您可以使用 ReplaceRegExGroup() 对文本进行修改,以符合格式样式和合规标准,尤其是需要识别数据中的复杂样式时。该函数的附加参数 group 允许您只更新较大文本模式的某些部分。例如,您可以更新 URL 的特定部分。

如有需要,您还可以使用此函数屏蔽敏感信息,如个人身份信息 (PII),使其不会显示给分析您应用程序的用户。

例 1 - 加载脚本以更新 URL 中的域名

例 2 - 更新 URL 中协议的图表表达式

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!