Friday, November 11, 2022

How to Split a String - Uipath

How UiPath split the string works


 The split() technique splits a string into an array of substrings. The split() method returns the new array. The split() method does now not change the original string. If (" ") is used as separator, the string is cut up between words.













Example #1 Simple Split

Here we will split the string into two for that we will be using the " " (spaces in between the lines) So will be having one array with two strings

Variable = "11 street"

Array_variable = split(Variable," ")










Example #2 New line split

Here we will split the string into two for that we will be using the newline So will be having one array with two strings

Variable = "11 

                    street"

Option 1 - 

Array_variable = Variable.Split(Environment.NewLine.TocharArray)


Option 2 -


Array_variable = Variable.Join(“-“,Variable .Split(Environment.NewLine.ToCharArray,StringSplitOptions.RemoveEmptyEntries))


Example #3 New line split


Variable = "11 

                    street"

Option 1 - 

Array_variable = Variable.Split(new string[ ] { “\r\n\r\n” },StringSplitOptions.RemoveEmptyEntries);



Wednesday, November 9, 2022

How to use regex in Mail Body

Regular expressions are mixtures of special personality operators, which are symbols that control the search, that you can use to assemble search strings for advanced locate and/or replace searches.



How to use Regex in Mail - Get the Verification Code


Step 1 ) First, you could read the body of the mail 
Step 2 ) Then you should use regex in oder to get the required link 




Step 3)  go to https://regex101.com/ 


Step 4 ) get an assign activity 

verification_code = Regex.Match(strText,"[0-9]+")



Samples:


Getting the first Match only:

myMatch | Datatype: Match = Regex.Match(strText,strPattern)

Getting all Matches:
myMatches | DataType: MatchCollection = Regex.Matches(strText,strPattern)


Regex Cheatsheet 

Anchors

^
Start of string, or start of line in multi-line pattern
\A
Start of string
$
End of string, or end of line in multi-line pattern
\Z
End of string
\b
Word boundary
\B
Not word boundary
\<
Start of word
\>
End of word

Character Classes

\c
Control character
\s
White space
\S
Not white space
\d
Digit
\D
Not digit
\w
Word
\W
Not word
\x
Hexade­cimal digit
\O
Octal digit

POSIX

[:upper:]
Upper case letters
[:lower:]
Lower case letters
[:alpha:]
All letters
[:alnum:]
Digits and letters
[:digit:]
Digits
[:xdigit:]
Hexade­cimal digits
[:punct:]
Punctu­ation
[:blank:]
Space and tab
[:space:]
Blank characters
[:cntrl:]
Control characters
[:graph:]
Printed characters
[:print:]
Printed characters and spaces
[:word:]
Digits, letters and underscore

Assertions

?=
Lookahead assertion
?!
Negative lookahead
?<=
Lookbehind assertion
?!= or ?<!
Negative lookbehind
?>
Once-only Subexp­ression
?()
Condition [if then]
?()|
Condition [if then else]
?#
Comment
 

Quanti­fiers

*
0 or more
{3}
Exactly 3
+
1 or more
{3,}
3 or more
?
0 or 1
{3,5}
3, 4 or 5
Add a ? to a quantifier to make it ungreedy.

Escape Sequences

\
Escape following character
\Q
Begin literal sequence
\E
End literal sequence
"­Esc­api­ng" is a way of treating characters which have a special meaning in regular expres­sions literally, rather than as special charac­ters.

Common Metach­ara­cters

^
[
.
$
{
*
(
\
+
)
|
?
<
>
The escape character is usually \

Special Characters

\n
New line
\r
Carriage return
\t
Tab
\v
Vertical tab
\f
Form feed
\xxx
Octal character xxx
\xhh
Hex character hh
 

Groups and Ranges

.
Any character except new line (\n)
(a|b)
a or b
(...)
Group
(?:...)
Passive (non-c­apt­uring) group
[abc]
Range (a or b or c)
[^abc]
Not (a or b or c)
[a-q]
Lower case letter from a to q
[A-Q]
Upper case letter from A to Q
[0-7]
Digit from 0 to 7
\x
Group/­sub­pattern number "­x"
Ranges are inclusive.

Pattern Modifiers

g
Global match
i *
Case-i­nse­nsitive
m *
Multiple lines
s *
Treat string as single line
x *
Allow comments and whitespace in pattern
e *
Evaluate replac­ement
U *
Ungreedy pattern
* PCRE modifier

String Replac­ement

$n
nth non-pa­ssive group
$2
"­xyz­" in /^(abc­(xy­z))$/
$1
"­xyz­" in /^(?:a­bc)­(xyz)$/
$`
Before matched string
$'
After matched string
$+
Last matched string
$&
Entire matched string
Some regex implem­ent­ations use \ instead of $.






Object reference not set to an instance

 The message "object reference no longer set to an instance of an object" potentially that you are referring to an object that does not exist or used to be deleted or cleaned up. It's usually higher to avoid a NullReferenceException than to cope with it after it occurs.



The Object reference not set to an instance of an object normally occurs when a variable is null.

You can use the uipath watch panel step by step to check what containing in the variable till the end  like below.




Last Blogs