Splunk Search

How to use regex on a field's value in a search?

splunkuser21
Engager
index=system* sourcetype=inventory  order=829

I am trying to extract the 3 digit field number in this search with rex to search all entries with only the three digit code. I tried:

index=system* sourcetype=inventory  (rex field=order "\d+")
index=system* sourcetype=inventory  (rex field=order "(\d+)")
index=system* sourcetype=inventory  (rex field=order "[0-9]{3}")

What is the correct way to do this?

Thanks!

0 Karma
1 Solution

MuS
Legend

Hi splunkuser21,

try this:

index=system* sourcetype=inventory  | rex field=order "(?<myOrder>\d{3})" | search myOrder=*

This will create a new field called myOrder which can be searched further down the search pipe.
Hope this helps ...

cheers, MuS

View solution in original post

skottska
New Member

You can also use

index=system* sourcetype=inventory | regex order="\d{3}"

0 Karma

MuS
Legend

Hi splunkuser21,

try this:

index=system* sourcetype=inventory  | rex field=order "(?<myOrder>\d{3})" | search myOrder=*

This will create a new field called myOrder which can be searched further down the search pipe.
Hope this helps ...

cheers, MuS

MuS
Legend

You could also simply search for all orders below 1000 this will also return all order containing 3 digits:

index=system* sourcetype=inventory  order<1000
0 Karma

splunkuser21
Engager

Thanks @MuS !

0 Karma
Get Updates on the Splunk Community!

Developer Spotlight with Paul Stout

Welcome to our very first developer spotlight release series where we'll feature some awesome Splunk ...

Preparing your Splunk Environment for OpenSSL3

The Splunk platform will transition to OpenSSL version 3 in a future release. Actions are required to prepare ...

Deprecation of Splunk Observability Kubernetes “Classic Navigator” UI starting ...

Access to Splunk Observability Kubernetes “Classic Navigator” UI will no longer be available starting January ...