Splunk Search

How to extract LAT and LONG from a string?

changux
Builder

Hi all.

I have a field with:

Address=DG 14 KR 36 A 90 LAT:14.752811 LON:-79.543

I need to create three fields from here:

Address=DG 14 KR 36 A 90
LAT=14.752811
LON=-79.543

I know the regexes for LAT and LONG:

For LAT: (?<=LAT:)(-?\d+\.\d+)
For LON: (?<=LON:)([\d.-]+)

Address must be all the string before LAT word.

I tried to LAT and LON:

... | field="Address" "(?<LAT>.(?<=LAT:)(-?\d+\.\d+))\.(?<LON>.(?<=LON:)([\d.-]+))"

But doesn't work. Any idea? Also, I need extract the address.

0 Karma
1 Solution

javiergn
Super Champion

Hi,

My proposal that includes case insensitive checks and non-greedy evaluation:

| rex field=Address "(?i)^Address=(?<Address>.+?)\s+LAT:\s*(?<LAT>[\-\d\.]+)\s+LON:\s*(?<LON>[\-\d\.]+)\s*$"

View solution in original post

chimell
Motivator

Hi
try this search code

 ... |rex  field=Address   "(LAT\:(?<LAT>[^\s+]+)\s+(LON\:(?<LON>[^\s+]+)$"

javiergn
Super Champion

Hi,

My proposal that includes case insensitive checks and non-greedy evaluation:

| rex field=Address "(?i)^Address=(?<Address>.+?)\s+LAT:\s*(?<LAT>[\-\d\.]+)\s+LON:\s*(?<LON>[\-\d\.]+)\s*$"

muebel
SplunkTrust
SplunkTrust

Hi changux, try this regex:

^Address=(?<address>.*)\sLAT:(?<lat>.*)\sLON:(?<lon>.*)$

you can do inline field extraction after you've gotten the initial events by piping to the rex command like so:

| rex field=Address "^Address=(?<address>.*)\sLAT:(?<lat>.*)\sLON:(?<lon>.*)$"

Please let me know how this goes for you!

Get Updates on the Splunk Community!

Index This | Why did the turkey cross the road?

November 2025 Edition  Hayyy Splunk Education Enthusiasts and the Eternally Curious!   We’re back with this ...

Enter the Agentic Era with Splunk AI Assistant for SPL 1.4

  &#x1f680; Your data just got a serious AI upgrade — are you ready? Say hello to the Agentic Era with the ...

Feel the Splunk Love: Real Stories from Real Customers

Hello Splunk Community,    What’s the best part of hearing how our customers use Splunk? Easy: the positive ...