- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Regex - Search for Number Range within Array/String
Sample Data:
ID | [[Event1
,1435],[Event2
,78],[Event3
,142]] | etc.....
I'm wanting to build a query which will display the ID and the entire field of event data where 'Event2' is greater than (x).
I'm not overly familiar with regular expressions, so if anyone can point me in the right direction, I'd greatly appreciate it. As it, I'm searching for ([Event2
,1] OR [Event2
,2] OR [Event2
,3] . . .)
I'm trying to optimize my search here, and have had one heck of a time trying to self-instruct myself regex.
- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Try with this:
Event1
| rex ",(?P[0-9]+).*
Event2,(?P[0-9]+).*
Event3,(?P[0-9]+)"
| search Event2 >
Besides, you should have a look on the Splunk built-in field extractor documentation. This feature allows you to simply extract fields thru the GUI, without any particular knowledge of regex. And here is a website to learn regex: http://regexone.com/lesson
Regards,
- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Hi,
Not sure if this is what you want:
yoursearch
| rex field=_raw "(?<id>\d+) \| (?<events_raw>[^\|]+) \|"
| rex field=events_raw max_match=0 "\,(?<events>\d+)\]"
| eval MyEvent=mvindex(events,1)
| where MyEvent > 50
| table id, events
The regex above will extract all your events as a multifield and then you can use the mv commands to filter when Event X is greater than any given value.
Hope that helps.
Thanks,
J
- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

In case you want to try this out first:
https://regex101.com/r/eC1bI0/1
https://regex101.com/r/qP4mY9/1
