Splunk Search

Use rex to remove leading zeros

bablucho
Path Finder

Regex:

Printed\s\s\s\s.(.+)

Test String:
Printed : 001727

Output:
1. 001727

I want the output to display without the leading zeros. so as it appears: 1727

Can anybody help?

Tags (2)
0 Karma

vnravikumar
Champion

Try this

| makeresults 
| eval test=0000123456000001200 
| rex field="test" mode=sed "s/(^0*)//1"

Result: 123456000001200

0 Karma

cpetterborg
SplunkTrust
SplunkTrust

If one of these answers has worked for you, please accept the answer, so that future viewers of this question can know that it has been answered for you, and which one worked for you.

Thanks!

0 Karma

saurabhkharkar
Path Finder
if you convert the string to integer, it will get rid of the leading zeros

| makeresults
| eval String="00147"
| eval StringInt = tonumber(String)
| table String StringInt

Else if you want to keep it as a string, you can try using this regex
| makeresults
| eval String="00147"
|rex field=String "(?<Output>[^0+]\S+)" 
| table String Output

cpetterborg
SplunkTrust
SplunkTrust

Probably something like:

Printed\D+0*(\d+)

should work. \D+ is all non-digits, followed by zero or more 0's, then it puts the other digits is the capture group.

0 Karma

Vijeta
Influencer

You can use ltrim function

|makeresults| eval x="001727"|eval x= ltrim(tostring(x),"0")
0 Karma

wenthold
Communicator

The rex string I'd use:

Printed[\s:]+[0]*(?<your_field>[0-9]+)
0 Karma
Get Updates on the Splunk Community!

Routing logs with Splunk OTel Collector for Kubernetes

The Splunk Distribution of the OpenTelemetry (OTel) Collector is a product that provides a way to ingest ...

Welcome to the Splunk Community!

(view in My Videos) We're so glad you're here! The Splunk Community is place to connect, learn, give back, and ...

Tech Talk | Elevating Digital Service Excellence: The Synergy of Splunk RUM & APM

Elevating Digital Service Excellence: The Synergy of Real User Monitoring and Application Performance ...