Splunk Dev

Rex Field=All Fields mode=sed

tuanledang1120
Engager

Hi,

I'm trying to do a sed (replacing comma with _) on all fields, instead of having to specify which field I want to do the sed command on. Is that possible?

I tried to do field=*, but that did not work.

Thanks.

Tags (1)
0 Karma
1 Solution

javiergn
Super Champion

Alternatively you could use foreach:

| foreach * [eval <<FIELD>>=replace(<<FIELD>>, ",", "_" )]

View solution in original post

ddrillic
Ultra Champion

If you like, you can take it to props.conf.

We do the following to remove spaces -

# :"   kkkki    " -- remove spaces
SEDCMD-trim-ws1 = s/(:\")(\s+)?(\w+)(\s+)?(\")/\1\3\5/g

So, it's a sed command at the props.conf level.

In your case, the following should work -

SEDCMD-replace = s/,/_/g
0 Karma

javiergn
Super Champion

Alternatively you could use foreach:

| foreach * [eval <<FIELD>>=replace(<<FIELD>>, ",", "_" )]

tuanledang1120
Engager

This works! Thanks a lot!

0 Karma

sundareshr
Legend

Try field=_raw OR you don't need to specify a field. You could just do rex mode=sed "your regex"

0 Karma

tuanledang1120
Engager

I tried this but it didn't work.

0 Karma
Get Updates on the Splunk Community!

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 ...

[Puzzles] Solve, Learn, Repeat: Character substitutions with Regular Expressions

This challenge was first posted on Slack #puzzles channelFor BORE at .conf23, we had a puzzle question which ...

Shape the Future of Splunk: Join the Product Research Lab!

Join the Splunk Product Research Lab and connect with us in the Slack channel #product-research-lab to get ...