Splunk Dev

Convert range to set

tcollins93
New Member

How do I convert the string "1-4" to the multi-value field of {1,2,3,4}?

Thank you so much for you help, looking forward to a response

Tags (1)
0 Karma

somesoni2
Revered Legend

Try like this

..your current search | eval multivaluedfield=mvrange(mvindex(split(yourstringfield,"-"),0),mvindex(split(yourstringfield,"-"),1)+1)

DalJeanis
Legend

To break that down into a less efficient but more readable nearly-self-explaining code...

...your current search 
| eval TheRange=split(yourstringfield,"-")
| eval LowEnd=mvindex(TheRange,0)
| eval HighEnd=tonumber(mvindex(TheRange,1))+1
| eval multivaluedfield=mvrange(LowEnd,HighEnd)

The +1 is because mvrange halts when it gets to the high end of the range, not producing a result for that last step. You could use +.00000000001 and it would work the same.

woodcock
Esteemed Legend

You need a tonumber around the HighEnd's call to mvindex.

DalJeanis
Legend

rakken sakken sassafrak mumble mumble... so many languages ... grekkle fraggle morgin frelling foldergarben overloaded operators smekk.... because no, + isn't enough of a clue for splunk...

0 Karma

woodcock
Esteemed Legend

Turnabout is fair play!

0 Karma
Get Updates on the Splunk Community!

Splunk Enterprise Security 8.x: The Essential Upgrade for Threat Detection, ...

 Prepare to elevate your security operations with the powerful upgrade to Splunk Enterprise Security 8.x! This ...

Get Early Access to AI Playbook Authoring: Apply for the Alpha Private Preview ...

Passionate about security automation? Apply now to our AI Playbook Authoring Alpha private preview ...

Reduce and Transform Your Firewall Data with Splunk Data Management

Managing high-volume firewall data has always been a challenge. Noisy events and verbose traffic logs often ...