正则表达式为非典型括号

时间:2015-06-30 09:06:03

标签: regex grok

示例输入:

Ala ma kota (ASD defect - 7) kot ma ale.

理想输出:

(ASD defect - 7)

如何从括号中解析此文本?

1 个答案:

答案 0 :(得分:1)

在Grok中,您需要以下带有命名捕获组的正则表达式:

\((?<name>[^()]*)\)

这将匹配括号内的括号内的文本。要包含它们,只需将它们放入捕获组:

(?<name>\([^()]*\))

否定字符类[^()]*匹配除)(以外的0个或多个字符。

<强>更新

至于使用嵌套捕获组,这是一个例子:

(?<sth2>\bwid:\s*(?<wid>\d+))

enter image description here