Hi,
I have such strings:
Work Company TKA-A120
Work Company TKA-120
I want to get two values.
- TKA for both cases
- 120 but only for second string when there are three digits without letter before “-”. If not no Regex found.
I dont know how to find such regex to be working for these strings 
1 Like
HI @Marek_Matuszak try this regex pattern
Let me know if it works for you
Regards
Nived N
Happy Automation
i want something more like 3 upper cases in first case
1 Like
Hey @Marek_Matuszak,
If all strings always follow the pattern you mentioned above, I’d use a Split and TryParse. Something like this:
Int32.TryParse(stringVar.Split("-"c)(1)).
If output is true it means there is no letter after hyphen. Then, you can use stringVar.Split("-"c)(1) to get 120, for example.
Considering output as false, you can use same expression to get A120, for example. But I understood you don’t need this one.
To retrieve the letters before hyphen, for both cases you could use:
stringVar.Split(" “c).Last.ToString.Split(”-"c)(0)
In addition, you can follow this idea using Invoke Method. It would be much better 
Also, regex is another way. If you want to use it, feel free.
Hi @Marek_Matuszak
Thank you for providing a Sample, the expected Output and a little about the Pattern (more information on the pattern is always better)
How does this pattern work for you?
(?<=Work Company )([A-Z]{3})(-\d{3})*
Preview / play with the results here 
Description: It will always grab the three capital letters after the words “Work Company” and IF followed by a “-” and exactly three digits it will grab those too.

If you want to learn Regex - check out my Regex Megapost for new users 
2 Likes