正则提取
用正则从文本里取出匹配。需要先熟悉正则;只要替换不要提取,用 替换文本。
当前模块定义
sys:regexExtract输入 8 · 输出 9 · 枚举 1
输入参数
- 提取方式
getGroupEnum必填输出的内容根据提取内容有所不同,请参考模块文档。
各匹配项的值默认0第一个匹配项的组1各匹配项的组2 - 输入
dataText必填要提取内容的文本
- 正则表达式
patternText必填用于提取内容的正则表达式
- 忽略大小写
ignoreCaseBoolean可选不区分英文大小写
- 单行模式
singleLineBoolean可选此模式下"."能匹配任意字符,包括换行符。(否则匹配除了\n外的任意字符)
- 多行模式
multiLineBoolean可选此模式下^和$可以分别匹配行首和行尾。(否则匹配输入内容的开始和结束)
- 从右向左
rightToLeftBoolean可选从右向左查找匹配内容
- 失败后中止动作
stopIfFailBoolean可选操作失败后,是否停止后续动作的执行。
输出参数
- 是否成功
isSuccessBoolean是否匹配成功
- 所有匹配列表
matchesList返回所有的匹配项
- 匹配1
match1Any第1个匹配项的值
- 匹配2
match2Any第2个匹配项的值
- 匹配3
match3Any第3个匹配项的值
- 匹配4
match4Any第4个匹配项的值
- 匹配5
match5Any第5个匹配项的值
- Match对象
matchObjObject首个匹配的原始的C#语言Match对象,可以在表达式中使用
- Matches集合
matchesCollectionObject所有匹配的原始Match对象集合(MatchCollection),可以在表达式中使用
概述
正则提取
使用正则表达式提取指定内容
参数说明
提取方式:决定输出长什么样。
- 各匹配项的值:每个完整匹配一项。
- 第一个匹配项的组:只看第一处匹配的捕获组。
- 各匹配项的组:每个匹配的对应组收成列表。
正则提取
使用正则表达式提取指定内容
输入:原文。
正则表达式:用来匹配的模式。
忽略大小写:不区分英文大小写。
单行模式:. 匹配含换行在内的任意字符;否则不匹配 \n。可与多行同时开。
多行模式:^ / $ 匹配行首行尾;否则只匹配整段开头和结尾。
从右向左:从右边开始找。旧稿未写。
失败后中止动作:匹配失败是否停下。默认开启。
输出
- 是否成功:是否匹配到。
- 所有匹配列表:各匹配项的值,或「第一个匹配项的组」时该匹配的各组。
- 匹配1~匹配5:前 5 个匹配,或第一处匹配的前 5 个组,或「各匹配项的组」时各组列表。
- Match对象:仅「第一个匹配项的组」,.NET
Match。 - Matches集合:仅「各匹配项的值 / 各匹配项的组」,.NET
MatchCollection。
提取方式对照
输入:
a1 b2 c3 d4
e5 f6 g7 h8
正则:([a-z])([0-9])
| 提取方式 | 所有匹配列表 | 匹配1~5 |
|---|---|---|
| 各匹配项的值 | a1 … h8 | 前 5 个完整匹配 |
| 第一个匹配项的组 | a、1 | 第一处的组:a、1 |
| 各匹配项的组 | 各完整匹配 | 匹配1 是各组第 1 组列表,匹配2 是第 2 组列表 |
限制与排障
匹配不到时若开了失败中止,后面步骤不会跑。调试先关掉,看 是否成功。单行 / 多行含义和常见「多行」口语不一样,按上面说明选。
示例动作
步骤较多,用卡片打开。速查手册也是分享动作,只保留安装入口。
相关链接
更改历史
- 1.4.20 增加提取方式。
更新于