使用Splunk rex命令提取2个单词之间的字段

时间:2019-03-29 05:51:36

标签: splunk splunk-query splunk-formula

请协助提取\在2个固定字之间创建一个新字段,其中一个以!开头

示例:

!CASH OUT          $50.00!                        !TOTAL AUD    $61.80! 

!CASH OUT!TOTAL是固定的,但是($22.00!)之间的值量改变。我想创建一个字段,以便可以按现金支出金额等过滤事件。我只希望美元金额成为最后没有!的字段。

我尝试了以下搜索,但是它创建了一个!CASH OUT之后的所有数据的取现字段,并且没有在!TOTAL之前剪切该字段

"CASH OUT" "!TOTAL" | rex "CASH OUT (?.*)!TOTAL"

search | "CASH OUT" "!TOTAL" | rex "CASH OUT (?.*)!TOTAL"

field = $50.00

1 个答案:

答案 0 :(得分:1)

rex "(?<total>\$[^!]+)"

进入称为total的捕获组,捕获以美元符号开头的所有内容,然后捕获所有不带有感叹号的内容。

rex "\$(?<total>\[^!]+)"

如果您不想在捕获的字段中包含美元符号