vboddu
(vboddu)
August 11, 2020, 5:33am
1
Below is My Text and the lines varies like below and output should amount and tax value
Scenario1:
Organization: OU2510 EGDI Supplier Site: PORTLAND Invoice Number: 1706619 Tax Value: 215.47 Date: 19-MAY-2020
Amount: 1,372.90 AUD Invoice Received Date: 20-MAY-
Scenario 2:
Organization: OU2510 EGDI Supplier Site: PORTLAND Invoice Number: 1706619 Tax Value: 215.47 Date: 19-MAY-2020
Amount: 1372.90 AUD Invoice Received Date: 20-MAY-
Scenario 3:
Organization: OU2510 EGDI Supplier Site: PORTLAND Invoice Number: 1706619 Tax Value: 215.47 Date: 19-MAY-2020 Amount: 1,372.90 AUD Invoice Received Date: 20-MAY-
Scenario 4:
Organization: OU2510 EGDI Supplier Site: PORTLAND Invoice Number: 1706619
Tax Value: 215.47 Date: 19-MAY-2020
Amount: 1,372.90 AUD Invoice Received Date: 20-MAY-
Output:
215.47
1372.90
Yoichi
(Yoichi)
August 11, 2020, 5:39am
2
Hi,
Hope the following helps you.
Tax Value
System.Text.RegularExpressions.Regex.Match(text,"(?<=Tax Value:\s*)[.,\d]+").Value
Amount
System.Text.RegularExpressions.Regex.Match(text,"(?<=Amount:\s*)[.,\d]+").Value.Replace(",","")
Regards,
4 Likes
Hello
Try this Main.
Main.xaml (7.5 KB)
Regex Patterns:
(?<=Tax Value: )[\d.,]+
(?<=Amount: )[\d.,]+
Regex101.com Link - Tax Amount
Regex101.com Link - Amount
Cheers
Steve
2 Likes
To getTax value → Use Split function and Split with “Tax Value:” and store in String array variable
Then Take Split(1).Tostring.Trim and Assign in a String variable.
StringVariable.Split({" "},Stringsplitoptions.none) → Take in String Array variable
Then Split(0).Tostring will give result
For amount
Use Split function and Split with “Amount:” and store in String array variable
Then Take Split(1).Tostring.Trim and Assign in a String variable.
StringVariable.Split({" "},Stringsplitoptions.none) → Take in String Array variable
Then Split(0).Tostring will give result
vboddu
(vboddu)
August 11, 2020, 5:49am
5
@Yoichi @Steven_McKeering sometimes there is no space between Tax and Value it can TaxValue
Yoichi
(Yoichi)
August 11, 2020, 5:50am
6
Hi,
How about the following?
System.Text.RegularExpressions.Regex.Match(text,"(?<=Tax\s*Value:\s*)[.,\d]+").Value
Regards,
Hello
Update the pattern to the following.
(?<=Value: )[\d.,]+
Regex101.com preview
Hello again
You could try this pattern:
(?<=Tax Value: )[\d.,]+|(?<=TaxValue: )[\d.,]+
It will work for either "Tax Value: " or "TaxValue: "
1 Like
vboddu
(vboddu)
August 11, 2020, 5:58am
11
this worked perfectly thanks Steve and yoichi for help
1 Like
Yoichi
(Yoichi)
August 11, 2020, 5:59am
12
Hi,
Do you use regex101? This site is not 100% compatible with .net regex.
Can you try on uipath actually or .net regex tester such as .NET Regex Tester - Regex Storm etc
Regards,
2 Likes
This is true and worth noting @vboddu .
@Yoichi ’s solution would work fine also. I use Regex101.com out of habit (the sharing functionality). Its better to be using RegexStorm.Net
@Yoichi knows way more than me!
@vboddu - Please mark Yoichi’s post as a solution. Its simpler than my suggestion.
1 Like
vboddu
(vboddu)
August 11, 2020, 6:05am
14
@Yoichi thanks yoichi that worked. new stuff to remember
2 Likes
system
(system)
Closed
August 14, 2020, 6:05am
15
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.