在Power Automate中提取两个字符间的字符串
Power Automate提取括号间字符串的解决方案
针对输入格式如United States (+1)的内容,要提取括号内的+1,可以用以下两种简单的表达式实现:
方法一:用split函数(更简洁)
直接通过两次分割操作提取内容,假设你的输入内容存储在triggerBody()['CountryCode'](替换为你实际的字段/变量名),表达式如下:
split(split(triggerBody()['CountryCode'], '(')[1], ')')[0]
逻辑说明:
- 第一次用
(分割输入内容,得到数组['United States ', '+1)'],取索引为1的元素+1) - 第二次用
)分割这个元素,得到数组['+1', ''],取索引为0的元素就是目标内容+1
方法二:用substring+indexOf组合
如果习惯用字符串位置计算,也可以用这个表达式:
substring( triggerBody()['CountryCode'], add(indexOf(triggerBody()['CountryCode'], '('), 1), sub(indexOf(triggerBody()['CountryCode'], ')'), add(indexOf(triggerBody()['CountryCode'], '('), 1)) )
逻辑说明:
indexOf(..., '('):定位左括号的位置add(..., 1):得到括号内第一个字符的起始位置indexOf(..., ')'):定位右括号的位置sub(右括号位置, 起始位置):计算括号内内容的长度substring(输入内容, 起始位置, 长度):提取出括号内的内容
两种方法都能精准提取出+1这类括号内的字符串,直接把表达式中的triggerBody()['CountryCode']替换成你流程中实际的输入字段或变量名即可使用。
内容的提问来源于stack exchange,提问作者Jason
相关产品推荐
相关产品推荐

