Splunk Search

Regex help - sourcetypes with hyphens, -too_small, & -\d+

Runals
Motivator

Relative to sourcetypes I'm trying to come up with a regex to pull out the 'root' being sensitive to the naming convention for ones that Splunk has attempted to learn (-too_small & -#). What is tripping me up is when a sourcetype has a hyphen in it already. This regex gets me pretty close but if anyone can recommend a tweak I'd be all ears.

| rex field=sourcetype "(?<st>[^-]+)(?<d>-too_small$|-\d+$)?" 

So for example if my sourcetype is 'my-sourcetype' the regex above will return 'my'

Tags (1)
1 Solution

martin_mueller
SplunkTrust
SplunkTrust

Use this instead:

| rex field=sourcetype "^(?<st>.+?)(?<d>-too_small|-\d+)?$"

I made these changes:

  • Allow hyphens in <st>
  • Make <st> non-greedy to avoid eating up <d>
  • Move the $ anchor out of the optional <d> to force the non-greedy <st> to go all the way
  • Added a ^ anchor - for prettiness/readability, no functional need because <st> will start at the beginning anyway

View solution in original post

martin_mueller
SplunkTrust
SplunkTrust

Use this instead:

| rex field=sourcetype "^(?<st>.+?)(?<d>-too_small|-\d+)?$"

I made these changes:

  • Allow hyphens in <st>
  • Make <st> non-greedy to avoid eating up <d>
  • Move the $ anchor out of the optional <d> to force the non-greedy <st> to go all the way
  • Added a ^ anchor - for prettiness/readability, no functional need because <st> will start at the beginning anyway
Get Updates on the Splunk Community!

Upcoming Webinar: Unmasking Insider Threats with Slunk Enterprise Security’s UEBA

Join us on Wed, Dec 10. at 10AM PST / 1PM EST for a live webinar and demo with Splunk experts! Discover how ...

.conf25 technical session recap of Observability for Gen AI: Monitoring LLM ...

If you’re unfamiliar, .conf is Splunk’s premier event where the Splunk community, customers, partners, and ...

A Season of Skills: New Splunk Courses to Light Up Your Learning Journey

There’s something special about this time of year—maybe it’s the glow of the holidays, maybe it’s the ...