正则表达式 - 在逗号字符后丢弃文本

时间:2013-12-03 16:58:56

标签: regex logstash logstash-grok

如果我有文字:

test: firstString, blah: anotherString, blah:lastString

如何获取文本“firstString”

我的正则表达式是:

 test:(.*),

修改 这会带回firstString, blah: anotherString,,但我只需要带回'firstString'文本?

1 个答案:

答案 0 :(得分:12)

使用非贪婪的量词:

test:(.*?),

或字符类:

test:([^,]*),

也要忽略逗号:

test:([^,]*)

如果您想省略test:,也可以使用这样的后视:

(?<=test:\s)[^,]*

由于您正在使用此grok debugger,因此我可以使用命名的捕获组来实现此功能:

(?<test>(?<=test:\s)[^,]*)
相关问题