Splunk Search

extract content of brackets

indeed_2000
Motivator

how can i extract content of first bracket if it is string?

e.g:
2020-04-21 23:59:59,093 INFO xxx.xxx-zz-00000 [process] start[ppp] time[00] tag[xxx]
2020-04-21 23:59:59,093 INFO xxx.xxx-zz-00000 [1234567] start[ppp] time[00] tag[xxx]
....

expected result:
process

have huge log file need to extract process with this conditions
1-content of first bracket
2-it must be string not number!

Thanks,

0 Karma

javiergn
Super Champion

Hi @mehrdad_2000,

If you just want whatever is between square brackets but ensuring it only contains letters and not numbers, you can do something like:

| rex max_match=1 "^\d{4}\-\d{2}\-\d{2} \d{2}:\d{2}:\d{2}\,\d{3} \w+ [\w\-\.]+ \[(?<myField>[a-zA-Z]+)\]"

For instance, if I use your sample data:

alt text

0 Karma

indeed_2000
Motivator

As I mentioned this is large log file and need more complete regex to do this.
For example your answer extract only fixed pattern that i mention, but not work on these:

2020-04-21 23:59:59,093 INFO xxxx.xxxxx-zz-00000xxx111 [process] start[ppp] time[00] tag[xxx]
2020-04-21 23:59:59,093 INFO xx.xxx-zz-00000x [report] start[ppp] time[00] tag[xxx]

Expected output:
process
report

0 Karma

javiergn
Super Champion

Hmm, that's interesting. I have tested both your samples on regex101 and my regex works fine with them. Look:

https://regex101.com/r/cjjSHZ/1

0 Karma
Get Updates on the Splunk Community!

Splunk Observability for AI

Don’t miss out on an exciting Tech Talk on Splunk Observability for AI!Discover how Splunk’s agentic AI ...

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

Watch On Demand the Tech Talk on November 6 at 11AM PT, and empower your SOC to reach new heights! Duration: ...

Splunk Observability as Code: From Zero to Dashboard

For the details on what Self-Service Observability and Observability as Code is, we have some awesome content ...