Regular Expressions 101

Save & Share

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8

Function

  • Match
  • Substitution
  • List
  • Unit Tests
/
^(((((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))?)?(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?<(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))>((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?))|(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?))))$
/
^ asserts position at start of the string
1st Capturing Group
(((((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))?)?(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?<(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))>((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?))|(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?))))
1st Alternative
((((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))?)?(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?<(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))>((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?))
2nd Capturing Group
((((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))?)?(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?<(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))>((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?))
3rd Capturing Group
(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))?)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
4th Capturing Group
((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
5th Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
6th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
7th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
8th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
9th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
10th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
11th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
12th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
13th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
14th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
15th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
16th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
17th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
18th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
19th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
20th Capturing Group
([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
Match a single character present in the list below
[A-Za-z0-9!#-'*+\/=?^_`{|}~-]
A-Z matches a single character in the range between A (index 65) and Z (index 90) (case sensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case sensitive)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-' matches a single character in the range between # (index 35) and ' (index 39) (case sensitive)
*+
matches a single character in the list *+ (case sensitive)
\/ matches the character / with index 4710 (2F16 or 578) literally (case sensitive)
=?^_`{|}~-
matches a single character in the list =?^_`{|}~- (case sensitive)
21st Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
22nd Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
23rd Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
24th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
25th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
26th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
27th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
28th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
29th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
30th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
31st Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
32nd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
33rd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
34th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?")
35th Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?")
36th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
37th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
38th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
39th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
40th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
41st Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
42nd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
43rd Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
44th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
45th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
46th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
47th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
48th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
49th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
" matches the character " with index 3410 (2216 or 428) literally (case sensitive)
50th Capturing Group
((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
51st Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
52nd Capturing Group
(([!#-[\]-~])|(\\([ -~]|\s)))
1st Alternative
([!#-[\]-~])
53rd Capturing Group
([!#-[\]-~])
Match a single character present in the list below
[!#-[\]-~]
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-[ matches a single character in the range between # (index 35) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
54th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
55th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
56th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
" matches the character " with index 3410 (2216 or 428) literally (case sensitive)
57th Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?<(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))>((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
58th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
59th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
60th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
61st Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
62nd Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
63rd Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
64th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
65th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
66th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
67th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
68th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
69th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
70th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
71st Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
< matches the character < with index 6010 (3C16 or 748) literally (case sensitive)
72nd Capturing Group
(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))
73rd Capturing Group
((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))
1st Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
74th Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
75th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
76th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
77th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
78th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
79th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
80th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
81st Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
82nd Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
83rd Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
84th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
85th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
86th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
87th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
88th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
89th Capturing Group
(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)
90th Capturing Group
([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
Match a single character present in the list below
[A-Za-z0-9!#-'*+\/=?^_`{|}~-]
A-Z matches a single character in the range between A (index 65) and Z (index 90) (case sensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case sensitive)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-' matches a single character in the range between # (index 35) and ' (index 39) (case sensitive)
*+
matches a single character in the list *+ (case sensitive)
\/ matches the character / with index 4710 (2F16 or 578) literally (case sensitive)
=?^_`{|}~-
matches a single character in the list =?^_`{|}~- (case sensitive)
91st Capturing Group
(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
\. matches the character . with index 4610 (2E16 or 568) literally (case sensitive)
92nd Capturing Group
([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
Match a single character present in the list below
[A-Za-z0-9!#-'*+\/=?^_`{|}~-]
A-Z matches a single character in the range between A (index 65) and Z (index 90) (case sensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case sensitive)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-' matches a single character in the range between # (index 35) and ' (index 39) (case sensitive)
*+
matches a single character in the list *+ (case sensitive)
\/ matches the character / with index 4710 (2F16 or 578) literally (case sensitive)
=?^_`{|}~-
matches a single character in the list =?^_`{|}~- (case sensitive)
93rd Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
94th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
95th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
96th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
97th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
98th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
99th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
100th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
101st Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
102nd Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
103rd Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
104th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
105th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
106th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?")
107th Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?")
108th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
109th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
110th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
111th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
112th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
113th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
114th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
115th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
116th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
117th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
118th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
119th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
120th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
121st Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
" matches the character " with index 3410 (2216 or 428) literally (case sensitive)
122nd Capturing Group
((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
123rd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
124th Capturing Group
(([!#-[\]-~])|(\\([ -~]|\s)))
1st Alternative
([!#-[\]-~])
125th Capturing Group
([!#-[\]-~])
Match a single character present in the list below
[!#-[\]-~]
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-[ matches a single character in the range between # (index 35) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
126th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
127th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
128th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
" matches the character " with index 3410 (2216 or 428) literally (case sensitive)
@ matches the character @ with index 6410 (4016 or 1008) literally (case sensitive)
129th Capturing Group
((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?))
1st Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
130th Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
131st Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
132nd Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
133rd Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
134th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
135th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
136th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
137th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
138th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
139th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
140th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
141st Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
142nd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
143rd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
144th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
145th Capturing Group
(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)
146th Capturing Group
([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
Match a single character present in the list below
[A-Za-z0-9!#-'*+\/=?^_`{|}~-]
A-Z matches a single character in the range between A (index 65) and Z (index 90) (case sensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case sensitive)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-' matches a single character in the range between # (index 35) and ' (index 39) (case sensitive)
*+
matches a single character in the list *+ (case sensitive)
\/ matches the character / with index 4710 (2F16 or 578) literally (case sensitive)
=?^_`{|}~-
matches a single character in the list =?^_`{|}~- (case sensitive)
147th Capturing Group
(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
\. matches the character . with index 4610 (2E16 or 568) literally (case sensitive)
148th Capturing Group
([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
Match a single character present in the list below
[A-Za-z0-9!#-'*+\/=?^_`{|}~-]
A-Z matches a single character in the range between A (index 65) and Z (index 90) (case sensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case sensitive)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-' matches a single character in the range between # (index 35) and ' (index 39) (case sensitive)
*+
matches a single character in the list *+ (case sensitive)
\/ matches the character / with index 4710 (2F16 or 578) literally (case sensitive)
=?^_`{|}~-
matches a single character in the list =?^_`{|}~- (case sensitive)
149th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
150th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
151st Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
152nd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
153rd Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
154th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
155th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
156th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
157th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
158th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
159th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
160th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
161st Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
162nd Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
163rd Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
164th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
165th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
166th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
167th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
168th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
169th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
170th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
171st Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
172nd Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
173rd Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
174th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
175th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
176th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
177th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\[ matches the character [ with index 9110 (5B16 or 1338) literally (case sensitive)
178th Capturing Group
((\s? +)?([!-Z^-~]))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
179th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
180th Capturing Group
([!-Z^-~])
Match a single character present in the list below
[!-Z^-~]
!-Z matches a single character in the range between ! (index 33) and Z (index 90) (case sensitive)
^-~ matches a single character in the range between ^ (index 94) and ~ (index 126) (case sensitive)
181st Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\] matches the character ] with index 9310 (5D16 or 1358) literally (case sensitive)
182nd Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
183rd Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
184th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
185th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
186th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
187th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
188th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
189th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
190th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
191st Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
192nd Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
193rd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
194th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
195th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
> matches the character > with index 6210 (3E16 or 768) literally (case sensitive)
196th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
197th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
198th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
199th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
200th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
201st Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
202nd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
203rd Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
204th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
205th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
206th Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
207th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
208th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
209th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))
210th Capturing Group
(((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))@((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?\[((\s? +)?([!-Z^-~]))*(\s? +)?\]((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)))
211th Capturing Group
((((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)|(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?"((\s? +)?(([!#-[\]-~])|(\\([ -~]|\s))))*(\s? +)?"))
1st Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
212th Capturing Group
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?)
213th Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
214th Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
215th Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
216th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
217th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
218th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
219th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
220th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
221st Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
222nd Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
223rd Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
224th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
225th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
226th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
227th Capturing Group
(([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*)
228th Capturing Group
([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
Match a single character present in the list below
[A-Za-z0-9!#-'*+\/=?^_`{|}~-]
A-Z matches a single character in the range between A (index 65) and Z (index 90) (case sensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case sensitive)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-' matches a single character in the range between # (index 35) and ' (index 39) (case sensitive)
*+
matches a single character in the list *+ (case sensitive)
\/ matches the character / with index 4710 (2F16 or 578) literally (case sensitive)
=?^_`{|}~-
matches a single character in the list =?^_`{|}~- (case sensitive)
229th Capturing Group
(\.([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+)*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
\. matches the character . with index 4610 (2E16 or 568) literally (case sensitive)
230th Capturing Group
([A-Za-z0-9!#-'*+\/=?^_`{|}~-])+
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
Match a single character present in the list below
[A-Za-z0-9!#-'*+\/=?^_`{|}~-]
A-Z matches a single character in the range between A (index 65) and Z (index 90) (case sensitive)
a-z matches a single character in the range between a (index 97) and z (index 122) (case sensitive)
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
! matches the character ! with index 3310 (2116 or 418) literally (case sensitive)
#-' matches a single character in the range between # (index 35) and ' (index 39) (case sensitive)
*+
matches a single character in the list *+ (case sensitive)
\/ matches the character / with index 4710 (2F16 or 578) literally (case sensitive)
=?^_`{|}~-
matches a single character in the list =?^_`{|}~- (case sensitive)
231st Capturing Group
((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)|(\s? +))?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
1st Alternative
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
232nd Capturing Group
(((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +)?)
233rd Capturing Group
((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))
234th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
235th Capturing Group
(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\))
\( matches the character ( with index 4010 (2816 or 508) literally (case sensitive)
236th Capturing Group
((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
237th Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
238th Capturing Group
(([!-'*-[\]-~]*)|(\\([ -~]|\s)))
1st Alternative
([!-'*-[\]-~]*)
239th Capturing Group
([!-'*-[\]-~]*)
Match a single character present in the list below
[!-'*-[\]-~]
* matches the previous token between zero and unlimited times, as many times as possible, giving back as needed (greedy)
!-' matches a single character in the range between ! (index 33) and ' (index 39) (case sensitive)
*-[ matches a single character in the range between * (index 42) and [ (index 91) (case sensitive)
\]-~ matches a single character in the range between ] (index 93) and ~ (index 126) (case sensitive)
2nd Alternative
(\\([ -~]|\s))
240th Capturing Group
(\\([ -~]|\s))
\\ matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
241st Capturing Group
([ -~]|\s)
1st Alternative
[ -~]
Match a single character present in the list below
[ -~]
-~ matches a single character in the range between (index 32) and ~ (index 126) (case sensitive)
2nd Alternative
\s
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
242nd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\) matches the character ) with index 4110 (2916 or 518) literally (case sensitive)
243rd Capturing Group
(\s? +)?
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(\s? +)
244th Capturing Group
(\s? +)
\s
matches any whitespace character (equivalent to [\r\n\t\f\v ])
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
2nd Alternative
(((((\s? +)?(\(((\s? +)?(([!-'*-[\]-~]*)|(\\([ -~]|\s))))*(\s? +)?\)))(\s? +