Hi Team,
I have below text in different columns. I want to fetch the value from a Text mentioned below. I tried using Regex but not succesful.
Can someone help me with the below solutions.
1) Initiative I25250: Travelling Services = Result i want here is "I25250"
2) Feature F12302: Travelling Issues = Result i want here is "F12302"
3) S123456: Travelling Feedback = Result i want here is "S123456"
Regards,
Tausif.
Solved! Go to Solution.
Hi @Tausifk
My recommendation would be to use a normal Formula tool with the following expression:
REGEX_Replace([Field1], "(.*\s)?(.*)\:.*", "$2")
Hope this helps!
Hi Tausifk,
This REGEX should do the trick: "([A-Z]{1}\d*):"
I always use this page for testing: https://regex101.com/.
Hope this helps!
Thanks,
Rafal
#Excuse me, do you speak Alteryx?
Thanks for the reply.
Can you please explain me how the REG_EX function works.
I am new to Altereyx so not able to understand the way it is written.
Regards,
Tausif.
Regular Expressions are just pattern matching. You identify (often using operators instead of actual text) a pattern that you would like to look for, and then what you want to do once that pattern is found.
In the case of the suggested solutions:
from @Kenda
REGEX_Replace([Field1], "(.*\s)?(.*)\:.*", "$2")
Group everything before a space together. After that space, group everything until a ":" together. Since she's using "replace", then replace the ENTIRE pattern with whatever you find in the second group (between the space and the ":").
from @Thableaus
REGEX_Replace([Field1], ".*([A-Z]\d+).*", "$1")
Look for one letter followed by a string of numbers, and then return that grouping.
from @rafalolbert
"([A-Z]{1}\d*):"
Look for exactly one letter, followed by a string of numbers, and return that grouping. The difference is it's being used in a parse setting which created a new field from the regex tool. A subtle difference between this one and the solution from @Thableaus is the \d+ vs \d*. In this case @Thableaus requires there to be a number (the plus sign meaning at least one, but could be many). The \d* says there could be zero digits.
Given your use case, I think the statements from @Kenda or @Thableaus are the best bet.