Splunk Search

How to use Regex inside a Case statement?

amitrinx
Explorer

Hi,
How can i write this statement

| eval protocolUsed = case( regex consumerkey="[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}","O1",
regex consumerkey="^[a-z0-9A-Z]{2,}$", "O2"))

Labels (3)
0 Karma

ITWhisperer
SplunkTrust
SplunkTrust
| eval protocolUsed = case(match(consumerKey,"[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}"),"O1", match(consumerKey,"^[a-z0-9A-Z]{2,}$"), "O2")
0 Karma

amitrinx
Explorer

@ITWhisperer 
I am getting Error in 'EvalCommand': The expression is malformed. Expected ).

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

Please check that you have copied it correctly because this has been copied directly from a valid search

0 Karma

amitrinx
Explorer

I want to match certain keys and group them as O1 and others set of Keys to O2, and then use the fields
If i have to use rex field then in that case I should create two fields?

Have you understood?

0 Karma

isoutamo
SplunkTrust
SplunkTrust

Yes I think that this is the easiest way to do it. Later you can use e.g. coalesce to select which value you have in current event. Or use case with isnull/isnotnull conditions.

0 Karma

isoutamo
SplunkTrust
SplunkTrust

Hi

What issue you are trying to solve?

regex command select rows which are matching it and drop others. So you cannot use it like this.

If you want to pick part of event to a new field then you should use rex command not regex.

r. Ismo

0 Karma
Get Updates on the Splunk Community!

Unlock Database Monitoring with Splunk Observability Cloud

  In today’s fast-paced digital landscape, even minor database slowdowns can disrupt user experiences and ...

Purpose in Action: How Splunk Is Helping Power an Inclusive Future for All

At Cisco, purpose isn’t a tagline—it’s a commitment. Cisco’s FY25 Purpose Report outlines how the company is ...

[Upcoming Webinar] Demo Day: Transforming IT Operations with Splunk

Join us for a live Demo Day at the Cisco Store on January 21st 10:00am - 11:00am PST In the fast-paced world ...