Splunk Search

Extract multiple groups (rex), key/value pairs comma separated

ejwade
Contributor

I'm looking for the regular expression wizards out there. I need to do a rex with two capture groups: one for name, and one for value. I plan to use the replace function, and throw everything else away but those two capture groups (e.g., "\1: \2").

Here are some sample events.

name="Building",value="Southwest",descendants_action="success",operation="OVERRIDE"
name="Building",value=["Northeast","Northwest"],descendants_action="failure",operation="OVERRIDE"
name="Building",value="Southeast",descendants_action="success",operation="OVERRIDE"
name="Building",value="Northwest"
name="Building",value="Northwest",operation="OVERRIDE"

So far I just have this.
^name=\"(.*)\",value=\[?(.*)\]?

Any ideas?

Labels (1)
0 Karma
1 Solution

ITWhisperer
SplunkTrust
SplunkTrust

Try something along these lines

^name=\"([^\"]*)\",value=(\[([^\]]+)\]|\"[^\"]+\")(.*)

https://regex101.com/r/id6m8s/1

View solution in original post

ITWhisperer
SplunkTrust
SplunkTrust

Try something along these lines

^name=\"([^\"]*)\",value=(\[([^\]]+)\]|\"[^\"]+\")(.*)

https://regex101.com/r/id6m8s/1

gcusello
SplunkTrust
SplunkTrust

Hi @ejwade,

you should already have these extractions because usually Splunk identifies the groups fieldname=fieldvalue.

Anyway, please try this regex:

name\=\"(?<name>[^\"]*)\",value\=\[*\"(?<values>[^\"]*)

that you can test at https://regex101.com/r/PEszES/1

Ciao.

Giuseppe

Get Updates on the Splunk Community!

Optimize Cloud Monitoring

  TECH TALKS Optimize Cloud Monitoring Tuesday, August 13, 2024  |  11:00AM–12:00PM PST   Register to ...

What's New in Splunk Cloud Platform 9.2.2403?

Hi Splunky people! We are excited to share the newest updates in Splunk Cloud Platform 9.2.2403! Analysts can ...

Stay Connected: Your Guide to July and August Tech Talks, Office Hours, and Webinars!

Dive into our sizzling summer lineup for July and August Community Office Hours and Tech Talks. Scroll down to ...