可使用字段计算器(正则表达式)处理器使用正则表达式功能在目标字段中识别模式并从接收到的事件中提取子字符串。 已提取的子字符串要么被写回目标字段以代替字段原始值,要么被写入新字段。
示例
以下为字段计算器(正则表达式)处理器的用例:
字段值 | RegEx 模式 | 结果 |
---|---|---|
SWA2382 | ^SWA[0-9]+$ | 克拉符号 (^) 规定字符串开始的模式,美元符号 ($) 规定字符串结束的模式。 模式中的 [0-9]+ 部分表示字符串末尾的一个或多个 0 到 9 的数字。 对于目标字段中任何不以 SWA 开头,后面没有一些代表航班号的数字的值,处理器不会将其提取为子字符串。 |
02/15/1973 | [0-1][0-9][/][0-3][0-9][/][0-1][0-9][0-9][0-9] | 使用 0 到 1、0 到 3 和 0 到 9 等数字范围指定 mm/dd/yy 日期字符串的预期值。 对于两位数月份后接两位数日期和四位数年份的值,如果未使用正斜线 (/) 进行分隔,则处理器不会将其提取为子字符串。 |
3.14159 | ^[-+]?[0-9]*\.?[0-9]+$ | 此模式验证了目标字段中的字符串可编译为数值。 RegEx 模式中的星号 (*) 代表零个或更多个前面的字符;问号 (?) 表示零个或一个字符。 反斜线 (\) 意味着句点 (.) 是真正的小数点,而不是通配符 (*)。 该模式使浮点值的整数部分中必须包含一个正号 (+) 或负号 (-),并可包含小数点(可出现零次)。 |
Alpha | ^.{0,5} | 克拉符号 (^) 规定字符串开始的模式,句点 (.) 是匹配任何字符的通配符。 {0,5} 指示最小长度为 0 且最大长度为 5 的子字符串将作为匹配模式返回。 此 RegEx 模式可用于返回固定数量的字符,以支持具有字符限制阈值的新字段。 将 RegEx 模式应用于值为 AlphaBeta 的字段将仅返回子字符串 Alpha。Alpha 是字符串 AlphaBeta 的前 5 个字符。 |
用法说明
使用字段计算器(正则表达式)处理器时,请记住以下事项:
- 字段计算器处理器使用不同的表达式来执行常规的数学、词汇和逻辑计算,而字段计算器(正则表达式)处理器与其不同,仅使用正则表达式模式来标识并提取目标字段的子字符串。
- 为要评估的正则表达式模式指定目标字段时,所需语法为 ${…},其中 … 是由 ${} 括起来的字段名称。 这与字段计算器处理器形成了对比,后者期望仅使用名称来定义字段。
- 可以使用目标字段参数将处理器配置为在现有字段或新字段中存储输出子字符串: 通过添加新字段来更改事件记录的方案将需要 GeoEvent Server 创建新的 GeoEvent 定义。 新的 GeoEvent 定义将由 GeoEvent Server 管理,并且如果处理器或者使用该处理器的 GeoEvent 服务发生改变,则该定义将被删除。
参数
以下为字段计算器(正则表达式)处理器的参数:
参数 | 描述 |
---|---|
名称 |
用于在 GeoEvent Manager 中引用的处理器的描述性名称。 |
处理器 |
指定所选的处理器。 |
字段名 | 入站事件记录中用于计算值的字段名称。 标识字段所需的语法为 ${…},其中 … 是由 ${} 括起来的字段名称。 其示例为 ${Description}。 使用处理器引用字段名称的语法与字段计算器处理器不同,后者预计事件记录字段名称不区分大小写。 |
模式 | 一个正则表达式,用于标识由字段名称参数指定的事件记录目标字段中的模式。 处理器将使用模式来识别事件记录目标字段并从中提取子字符串。 注:有关多种类型正则表达式模式的示例,请参阅以上示例。 |
目标字段 | 用于指定由处理器计算的值的目标字段。 目标字段是将写入表达式结果的位置。 默认为现有字段。
|
新字段名称 (条件分析) | 将写入由处理器计算的值的新字段名称。 此参数在目标字段设置为新字段时显示,设置为现有字段时隐藏。 |
新字段类型 (条件分析) | 用于指定由处理器创建的新字段的数据类型。 默认为布尔型。 可用的数据类型包括:
此参数在目标字段设置为新字段时显示,设置为现有字段时隐藏。 |
新字段标签 (条件分析) | 将应用于新字段的现有字段标签的名称。 此参数没有默认值。 注:标签必须已存在,才能为新字段添加标签。 处理器将不会动态创建标签。 有关管理和创建标签的详细信息,请参阅管理标签。 此参数在目标字段设置为新字段时显示,设置为现有字段时隐藏。 |
新建 GeoEvent 定义名称 (条件分析) | 分配给新 GeoEvent 定义的名称。 新 GeoEvent 定义将组合入站事件记录的方案和用于存储计算值的新字段。 此参数在目标字段设置为新字段时显示,设置为现有字段时隐藏。 |
现有字段名称 | 将写入由处理器计算的值的现有字段名称。 注:可以使用定义菜单来标识入站事件记录的 GeoEvent 定义。 选择 GeoEvent 定义将缩小可用字段的范围以供选择。 可以使用字段菜单来标识将写入由处理器计算的值的现有字段的特定名称。 |
注意事项和限制
字段计算器(正则表达式)处理器不支持指定正则表达式模式中的反向引用。