Splunk Search

How to Build an If Statement based on if a field contains a string

katzr
Path Finder

For every record where the field Test contains the word "Please" - I want to replace the string with "This is a test", below is the logic I am applying and it is not working- I tried using case, like, and a changed from " to ' and = to == but I cannot get anything to work.

| eval Test=if(Test=="Please", "This is a test", Test)

0 Karma
1 Solution

somesoni2
Revered Legend

Try like this

...| eval Test=if(match(Test,"Please"),"This is a test", Test)

The equal sign does the exact comparison (value should match exactly). Since you want to check for "contains", you can use match(Test,"Please") or like(Test,"%Please%").

View solution in original post

somesoni2
Revered Legend

Try like this

...| eval Test=if(match(Test,"Please"),"This is a test", Test)

The equal sign does the exact comparison (value should match exactly). Since you want to check for "contains", you can use match(Test,"Please") or like(Test,"%Please%").

katzr
Path Finder

thank you this works!

0 Karma
Get Updates on the Splunk Community!

Building Reliable Asset and Identity Frameworks in Splunk ES

 Accurate asset and identity resolution is the backbone of security operations. Without it, alerts are ...

Cloud Monitoring Console - Unlocking Greater Visibility in SVC Usage Reporting

For Splunk Cloud customers, understanding and optimizing Splunk Virtual Compute (SVC) usage and resource ...

Automatic Discovery Part 3: Practical Use Cases

If you’ve enabled Automatic Discovery in your install of the Splunk Distribution of the OpenTelemetry ...