My fields have values like,
UTR998760071.unot.utrl.accorda.net
RANWA80A8881.cnet.utrl.matrixia.net
ANNA00A0071.tron.utrl.zimbaw.net
BP87DF087071.cnet.trzn.netisha.net
I want the fist part of the string to be extracted. The part before the first .(dot)
output be like
UTR998760071
RANWA80A8881
ANNA00A0071
BP87DF087071
Not with substr but with a regex preferably.
Thank you
There are a couple of ways to do that.
The first uses rex:
... | rex field=foo "(?<newField>[^\.]+)"
The other uses the split function.
... | eval newField=mvindex(split(field, "."), 0)
There are a couple of ways to do that.
The first uses rex:
... | rex field=foo "(?<newField>[^\.]+)"
The other uses the split function.
... | eval newField=mvindex(split(field, "."), 0)
Some of my fields demand extraction of other fields between the delimeter.
Any rex that could help me to get all the values between the delimeters please ?
UTR998760071.unot.utrl@accorda.net
(some delimeters are .(dot) and some are (@)
Output should be
UTR998760071
unot
utrl
accorda
net
That's a big change from the original question. Are the fields always in the same format (5 parts) or does it vary? Please provide all requirements so we can answer the question correctly.
Yes, they are all same format. (5 parts)
And I have to extract all 5 parts delimeted by .(dot) and @
Example : UTR998760071.unot.utrl@accorda.net
This regex should get all 5 fields.
(?<field1>[^\.]+)\.(?<field2>[^\.]+)\.(?<field3>[^@]+)@(?<field4>[^\.]+)\.(?<field5>.*)