a[]]b a]b yi $& a]b ICU makes [] into an empty set.
a[^bc]d aed y $& aed
a[^bc]d abd n - -
a[^-b]c adc y $& adc
a[^-b]c a-c n - -
a[^]b]c a]c n - -
a[^]b]c adc yi $& adc ICU [] set rules.
\ba\b a- y - -
\ba\b -a y - -
\ba\b -a- y - -
\by\b xy n - -
\by\b yz n - -
\by\b xyz n - -
\Ba\B a- n - -
\Ba\B -a n - -
\Ba\B -a- n - -
\By\b xy y - -
\By\b xy y $-[0] 1
\By\b xy y $+[0] 2
\By\b xy y - -
\by\B yz y - -
\By\B xyz y - -
\w a y - -
\w - n - -
\W a n - -
\W - y - -
a\sb a b y - -
a\sb a-b n - -
a\Sb a b n - -
a\Sb a-b y - -
\d 1 y - -
\d - n - -
\D 1 n - -
\D - y - -
[\w] a iy - -
[\w] - in - -
[\W] a in - -
[\W] - iy - -
a[\s]b a b iy - -
a[\s]b a-b in - -
a[\S]b a b in - -
a[\S]b a-b iy - -
[\d] 1 iy - -
[\d] - in - -
[\D] 1 in - -
[\D] - iy - -
ab|cd abc y $& ab
ab|cd abcd y $& ab
()ef def y $&-$1 ef-
()ef def y $-[0] 1
()ef def y $+[0] 3
()ef def y $-[1] 1
()ef def y $+[1] 1
*a - c - Quantifier follows nothing
(*)b - c - Quantifier follows nothing
$b b n - -
a\ - c - Search pattern not terminated
a\(b a(b y $&-$1 a(b-
a\(*b ab y $& ab
a\(*b a((b y $& a((b
a\\b a\b y $& a\b
abc) - c - Unmatched )
(abc - c - Unmatched (
((a)) abc y $&-$1-$2 a-a-a
((a)) abc y $-[0]-$-[1]-$-[2] 0-0-0
((a)) abc y $+[0]-$+[1]-$+[2] 1-1-1
((a)) abc by @- 0 0 0
((a)) abc by @+ 1 1 1
(a)b(c) abc y $&-$1-$2 abc-a-c
(a)b(c) abc y $-[0]-$-[1]-$-[2] 0-0-2
(a)b(c) abc y $+[0]-$+[1]-$+[2] 3-1-3
a+b+c aabbabc y $& abc
a{1,}b{1,}c aabbabc y $& abc
a** - c - Nested quantifiers
a.+?c abcabc y $& abc
(a+|b)* ab y $&-$1 ab-b
(a+|b)* ab y $-[0] 0
(a+|b)* ab y $+[0] 2
(a+|b)* ab y $-[1] 1
(a+|b)* ab y $+[1] 2
(a+|b){0,} ab y $&-$1 ab-b
(a+|b)+ ab y $&-$1 ab-b
(a+|b){1,} ab y $&-$1 ab-b
(a+|b)? ab y $&-$1 a-a
(a+|b){0,1} ab y $&-$1 a-a
)( - c - Unmatched )
[^ab]* cde y $& cde
abc n - -
a* y $&
([abc])*d abbbcd y $&-$1 abbbcd-c
([abc])*bcd abcd y $&-$1 abcd-a
a|b|c|d|e e y $& e
(a|b|c|d|e)f ef y $&-$1 ef-e
(a|b|c|d|e)f ef y $-[0] 0
(a|b|c|d|e)f ef y $+[0] 2
(a|b|c|d|e)f ef y $-[1] 0
(a|b|c|d|e)f ef y $+[1] 1
abcd*efg abcdefg y $& abcdefg
ab* xabyabbbz y $& ab
ab* xayabbbz y $& a
(ab|cd)e abcde y $&-$1 cde-cd
[abhgefdc]ij hij y $& hij
^(ab|cd)e abcde n x$1y xy
(abc|)ef abcdef y $&-$1 ef-
(a|b)c*d abcd y $&-$1 bcd-b
(ab|ab*)bc abc y $&-$1 abc-a
a([bc]*)c* abc y $&-$1 abc-bc
a([bc]*)(c*d) abcd y $&-$1-$2 abcd-bc-d
a([bc]*)(c*d) abcd y $-[0] 0
a([bc]*)(c*d) abcd y $+[0] 4
a([bc]*)(c*d) abcd y $-[1] 1
a([bc]*)(c*d) abcd y $+[1] 3
a([bc]*)(c*d) abcd y $-[2] 3
a([bc]*)(c*d) abcd y $+[2] 4
a([bc]+)(c*d) abcd y $&-$1-$2 abcd-bc-d
a([bc]*)(c+d) abcd y $&-$1-$2 abcd-b-cd
a([bc]*)(c+d) abcd y $-[0] 0
a([bc]*)(c+d) abcd y $+[0] 4
a([bc]*)(c+d) abcd y $-[1] 1
a([bc]*)(c+d) abcd y $+[1] 2
a([bc]*)(c+d) abcd y $-[2] 2
a([bc]*)(c+d) abcd y $+[2] 4
a[bcd]*dcdcde adcdcde y $& adcdcde
a[bcd]+dcdcde adcdcde n - -
(ab|a)b*c abc y $&-$1 abc-ab
(ab|a)b*c abc y $-[0] 0
(ab|a)b*c abc y $+[0] 3
(ab|a)b*c abc y $-[1] 0
(ab|a)b*c abc y $+[1] 2
((a)(b)c)(d) abcd y $1-$2-$3-$4 abc-a-b-d
((a)(b)c)(d) abcd y $-[0] 0
((a)(b)c)(d) abcd y $+[0] 4
((a)(b)c)(d) abcd y $-[1] 0
((a)(b)c)(d) abcd y $+[1] 3
((a)(b)c)(d) abcd y $-[2] 0
((a)(b)c)(d) abcd y $+[2] 1
((a)(b)c)(d) abcd y $-[3] 1
((a)(b)c)(d) abcd y $+[3] 2
((a)(b)c)(d) abcd y $-[4] 3
((a)(b)c)(d) abcd y $+[4] 4
[a-zA-Z_][a-zA-Z0-9_]* alpha y $& alpha
^a(bc+|b[eh])g|.h$ abh y $&-$1 bh-
(bc+d$|ef*g.|h?i(j|k)) effgz y $&-$1-$2 effgz-effgz-
(bc+d$|ef*g.|h?i(j|k)) ij y $&-$1-$2 ij-ij-j
(bc+d$|ef*g.|h?i(j|k)) effg n - -
(bc+d$|ef*g.|h?i(j|k)) bcdd n - -
(bc+d$|ef*g.|h?i(j|k)) reffgz y $&-$1-$2 effgz-effgz-
((((((((((a)))))))))) a y $10 a
((((((((((a)))))))))) a y $-[0] 0
((((((((((a)))))))))) a y $+[0] 1
((((((((((a)))))))))) a y $-[10] 0
((((((((((a)))))))))) a y $+[10] 1
((((((((((a))))))))))\10 aa y $& aa
((((((((((a))))))))))${bang} aa n - -
((((((((((a))))))))))${bang} a! y $& a!
(((((((((a))))))))) a y $& a
multiple words of text uh-uh n - -
multiple words multiple words, yeah y $& multiple words
(.*)c(.*) abcde y $&-$1-$2 abcde-ab-de
\((.*), (.*)\) (a, b) y ($2, $1) (b, a)
[k] ab n - -
abcd abcd y $&-\$&-\\$& abcd-$&-\abcd
a(bc)d abcd y $1-\$1-\\$1 bc-$1-\bc
a[-]?c ac y $& ac
(abc)\1 abcabc y $1 abc
([a-c]*)\1 abcabc y $1 abc
\1 - c - Reference to nonexistent group
\2 - c - Reference to nonexistent group
(a)|\1 a y - -
(a)|\1 x n - -
(a)|\2 - c - Reference to nonexistent group
(([a-c])b*?\2)* ababbbcbc y $&-$1-$2 ababb-bb-b
(([a-c])b*?\2){3} ababbbcbc y $&-$1-$2 ababbbcbc-cbc-c
((\3|b)\2(a)x)+ aaxabxbaxbbx n - -
((\3|b)\2(a)x)+ aaaxabaxbaaxbbax y $&-$1-$2-$3 bbax-bbax-b-a
((\3|b)\2(a)){2,} bbaababbabaaaaabbaaaabba y $&-$1-$2-$3 bbaaaabba-bba-b-a
(a)|(b) b y $-[0] 0
(a)|(b) b y $+[0] 1
(a)|(b) b y x$-[1] x
(a)|(b) b y x$+[1] x
(a)|(b) b y $-[2] 0
(a)|(b) b y $+[2] 1
'abc'i ABC y $& ABC
'abc'i XBC n - -
'abc'i AXC n - -
'abc'i ABX n - -
'abc'i XABCY y $& ABC
'abc'i ABABC y $& ABC
'ab*c'i ABC y $& ABC
'ab*bc'i ABC y $& ABC
'ab*bc'i ABBC y $& ABBC
'ab*?bc'i ABBBBC y $& ABBBBC
'ab{0,}?bc'i ABBBBC y $& ABBBBC
'ab+?bc'i ABBC y $& ABBC
'ab+bc'i ABC n - -
'ab+bc'i ABQ n - -
'ab{1,}bc'i ABQ n - -
'ab+bc'i ABBBBC y $& ABBBBC
'ab{1,}?bc'i ABBBBC y $& ABBBBC
'ab{1,3}?bc'i ABBBBC y $& ABBBBC
'ab{3,4}?bc'i ABBBBC y $& ABBBBC
'ab{4,5}?bc'i ABBBBC n - -
'ab??bc'i ABBC y $& ABBC
'ab??bc'i ABC y $& ABC
'ab{0,1}?bc'i ABC y $& ABC
'ab??bc'i ABBBBC n - -
'ab??c'i ABC y $& ABC
'ab{0,1}?c'i ABC y $& ABC
'^abc$'i ABC y $& ABC
'^abc$'i ABCC n - -
'^abc'i ABCC y $& ABC
'^abc$'i AABC n - -
'abc$'i AABC y $& ABC
'^'i ABC y $&
'$'i ABC y $&
'a.c'i ABC y $& ABC
'a.c'i AXC y $& AXC
'a.*?c'i AXYZC y $& AXYZC
'a.*c'i AXYZD n - -
'a[bc]d'i ABC n - -
'a[bc]d'i ABD y $& ABD
'a[b-d]e'i ABD n - -
'a[b-d]e'i ACE y $& ACE
'a[b-d]'i AAC y $& AC
'a[-b]'i A- y $& A-
'a[b-]'i A- y $& A-
'a[b-a]'i - c - Invalid [] range "b-a"
'a[]b'i - c - Unmatched [
'a['i - c - Unmatched [
'a]'i A] y $& A]
'a[]]b'i A]B y $& A]B
'a[^bc]d'i AED y $& AED
'a[^bc]d'i ABD n - -
'a[^-b]c'i ADC y $& ADC
'a[^-b]c'i A-C n - -
'a[^]b]c'i A]C n - -
'a[^]b]c'i ADC y $& ADC
'ab|cd'i ABC y $& AB
'ab|cd'i ABCD y $& AB
'()ef'i DEF y $&-$1 EF-
'*a'i - c - Quantifier follows nothing
'(*)b'i - c - Quantifier follows nothing
'$b'i B n - -
'a\'i - c - Search pattern not terminated
'a\(b'i A(B y $&-$1 A(B-
'a\(*b'i AB y $& AB
'a\(*b'i A((B y $& A((B
'a\\b'i A\B y $& A\B
'abc)'i - c - Unmatched )
'(abc'i - c - Unmatched (
'((a))'i ABC y $&-$1-$2 A-A-A
'(a)b(c)'i ABC y $&-$1-$2 ABC-A-C
'a+b+c'i AABBABC y $& ABC
'a{1,}b{1,}c'i AABBABC y $& ABC
'a**'i - c - Nested quantifiers
'a.+?c'i ABCABC y $& ABC
'a.*?c'i ABCABC y $& ABC
'a.{0,5}?c'i ABCABC y $& ABC
'(a+|b)*'i AB y $&-$1 AB-B
'(a+|b){0,}'i AB y $&-$1 AB-B
'(a+|b)+'i AB y $&-$1 AB-B
'(a+|b){1,}'i AB y $&-$1 AB-B
'(a+|b)?'i AB y $&-$1 A-A
'(a+|b){0,1}'i AB y $&-$1 A-A
'(a+|b){0,1}?'i AB y $&-$1 -
')('i - c - Unmatched )
'[^ab]*'i CDE y $& CDE
'abc'i n - -
'a*'i y $&
'([abc])*d'i ABBBCD y $&-$1 ABBBCD-C
'([abc])*bcd'i ABCD y $&-$1 ABCD-A
'a|b|c|d|e'i E y $& E
'(a|b|c|d|e)f'i EF y $&-$1 EF-E
'abcd*efg'i ABCDEFG y $& ABCDEFG
'ab*'i XABYABBBZ y $& AB
'ab*'i XAYABBBZ y $& A
'(ab|cd)e'i ABCDE y $&-$1 CDE-CD
'[abhgefdc]ij'i HIJ y $& HIJ
'^(ab|cd)e'i ABCDE n x$1y XY
'(abc|)ef'i ABCDEF y $&-$1 EF-
'(a|b)c*d'i ABCD y $&-$1 BCD-B
'(ab|ab*)bc'i ABC y $&-$1 ABC-A
'a([bc]*)c*'i ABC y $&-$1 ABC-BC
'a([bc]*)(c*d)'i ABCD y $&-$1-$2 ABCD-BC-D
'a([bc]+)(c*d)'i ABCD y $&-$1-$2 ABCD-BC-D
'a([bc]*)(c+d)'i ABCD y $&-$1-$2 ABCD-B-CD
'a[bcd]*dcdcde'i ADCDCDE y $& ADCDCDE
'a[bcd]+dcdcde'i ADCDCDE n - -
'(ab|a)b*c'i ABC y $&-$1 ABC-AB
'((a)(b)c)(d)'i ABCD y $1-$2-$3-$4 ABC-A-B-D
'[a-zA-Z_][a-zA-Z0-9_]*'i ALPHA y $& ALPHA
'^a(bc+|b[eh])g|.h$'i ABH y $&-$1 BH-
'(bc+d$|ef*g.|h?i(j|k))'i EFFGZ y $&-$1-$2 EFFGZ-EFFGZ-
'(bc+d$|ef*g.|h?i(j|k))'i IJ y $&-$1-$2 IJ-IJ-J
'(bc+d$|ef*g.|h?i(j|k))'i EFFG n - -
'(bc+d$|ef*g.|h?i(j|k))'i BCDD n - -
'(bc+d$|ef*g.|h?i(j|k))'i REFFGZ y $&-$1-$2 EFFGZ-EFFGZ-
'((((((((((a))))))))))'i A y $10 A
'((((((((((a))))))))))\10'i AA y $& AA
'((((((((((a))))))))))${bang}'i AA n - -
'((((((((((a))))))))))${bang}'i A! y $& A!
'(((((((((a)))))))))'i A y $& A
'(?:(?:(?:(?:(?:(?:(?:(?:(?:(a))))))))))'i A y $1 A
'(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))'i C y $1 C
'multiple words of text'i UH-UH n - -
'multiple words'i MULTIPLE WORDS, YEAH y $& MULTIPLE WORDS
'(.*)c(.*)'i ABCDE y $&-$1-$2 ABCDE-AB-DE
'\((.*), (.*)\)'i (A, B) y ($2, $1) (B, A)
'[k]'i AB n - -
'abcd'i ABCD y $&-\$&-\\$& ABCD-$&-\ABCD
'a(bc)d'i ABCD y $1-\$1-\\$1 BC-$1-\BC
'a[-]?c'i AC y $& AC
'(abc)\1'i ABCABC y $1 ABC
'([a-c]*)\1'i ABCABC y $1 ABC
a(?!b). abad y $& ad
a(?=d). abad y $& ad
a(?=c|d). abad y $& ad
a(?:b|c|d)(.) ace y $1 e
a(?:b|c|d)*(.) ace y $1 e
a(?:b|c|d)+?(.) ace y $1 e
a(?:b|c|d)+?(.) acdbcdbe y $1 d
a(?:b|c|d)+(.) acdbcdbe y $1 e
a(?:b|c|d){2}(.) acdbcdbe y $1 b
a(?:b|c|d){4,5}(.) acdbcdbe y $1 b
a(?:b|c|d){4,5}?(.) acdbcdbe y $1 d
((foo)|(bar))* foobar y $1-$2-$3 bar-foo-bar
:(?: - c - Sequence (? incomplete
a(?:b|c|d){6,7}(.) acdbcdbe y $1 e
a(?:b|c|d){6,7}?(.) acdbcdbe y $1 e
a(?:b|c|d){5,6}(.) acdbcdbe y $1 e
a(?:b|c|d){5,6}?(.) acdbcdbe y $1 b
a(?:b|c|d){5,7}(.) acdbcdbe y $1 e
a(?:b|c|d){5,7}?(.) acdbcdbe y $1 b
a(?:b|(c|e){1,2}?|d)+?(.) ace y $1$2 ce
^(.+)?B AB y $1 A
^([^a-z])|(\^)$ . y $1 .
^[<>]& <&OUT y $& <&
^(a\1?){4}$ aaaaaaaaaa y $1 aaaa
^(a\1?){4}$ aaaaaaaaa n - -
^(a\1?){4}$ aaaaaaaaaaa n - -
^(a(?(1)\1)){4}$ aaaaaaaaaa y $1 aaaa
^(a(?(1)\1)){4}$ aaaaaaaaa n - -
^(a(?(1)\1)){4}$ aaaaaaaaaaa n - -
((a{4})+) aaaaaaaaa y $1 aaaaaaaa
(((aa){2})+) aaaaaaaaaa y $1 aaaaaaaa
(((a{2}){2})+) aaaaaaaaaa y $1 aaaaaaaa
(?:(f)(o)(o)|(b)(a)(r))* foobar y $1:$2:$3:$4:$5:$6 f:o:o:b:a:r
(?<=a)b ab y $& b
(?<=a)b cb n - -
(?<=a)b b n - -
(?<!c)b ab y $& b
(?<!c)b cb n - -
(?<!c)b b y - -
(?<!c)b b y $& b
(?<%)b - c - Sequence (?<%...) not recognized
(?:..)*a aba y $& aba
(?:..)*?a aba y $& a
^(?:b|a(?=(.)))*\1 abc y $& ab
^(){3,5} abc y a$1 a
^(a+)*ax aax y $1 a
^((a|b)+)*ax aax y $1 a
^((a|bc)+)*ax aax y $1 a
(a|x)*ab cab y y$1 y
(a)*ab cab y y$1 y
(?:(?i)a)b ab y $& ab
((?i)a)b ab y $&:$1 ab:a
(?:(?i)a)b Ab y $& Ab
((?i)a)b Ab y $&:$1 Ab:A
(?:(?i)a)b aB n - -
((?i)a)b aB n - -
(?i:a)b ab y $& ab
((?i:a))b ab y $&:$1 ab:a
(?i:a)b Ab y $& Ab
((?i:a))b Ab y $&:$1 Ab:A
(?i:a)b aB n - -
((?i:a))b aB n - -
'(?:(?-i)a)b'i ab y $& ab
'((?-i)a)b'i ab y $&:$1 ab:a
'(?:(?-i)a)b'i aB y $& aB
'((?-i)a)b'i aB y $&:$1 aB:a
'(?:(?-i)a)b'i Ab n - -
'((?-i)a)b'i Ab n - -
'(?:(?-i)a)b'i aB y $& aB
'((?-i)a)b'i aB y $1 a
'(?:(?-i)a)b'i AB n - -
'((?-i)a)b'i AB n - -
'(?-i:a)b'i ab y $& ab
'((?-i:a))b'i ab y $&:$1 ab:a
'(?-i:a)b'i aB y $& aB
'((?-i:a))b'i aB y $&:$1 aB:a
'(?-i:a)b'i Ab n - -
'((?-i:a))b'i Ab n - -
'(?-i:a)b'i aB y $& aB
'((?-i:a))b'i aB y $1 a
'(?-i:a)b'i AB n - -
'((?-i:a))b'i AB n - -
'((?-i:a.))b'i a\nB n - -
'((?s-i:a.))b'i a\nB y $1 a\n
'((?s-i:a.))b'i B\nB n - -
(?:c|d)(?:)(?:a(?:)(?:b)(?:b(?:))(?:b(?:)(?:b))) cabbbb y $& cabbbb
(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb))) caaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb y $& caaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
'(ab)\d\1'i Ab4ab y $1 Ab
'(ab)\d\1'i ab4Ab y $1 ab
foo\w*\d{4}baz foobar1234baz y $& foobar1234baz
a(?{})b cabd y $& ab
a(?{)b - c - Sequence (?{...}) not terminated or not {}-balanced
a(?{{})b - c - Sequence (?{...}) not terminated or not {}-balanced
a(?{}})b - c -
a(?{"{"})b - c - Sequence (?{...}) not terminated or not {}-balanced
a(?{"\{"})b cabd y $& ab
a(?{"{"}})b - c - Unmatched right curly bracket
a(?{$bl="\{"}).b caxbd y $bl {
x(~~)*(?:(?:F)?)? x~~ y - -
^a(?#xxx){3}c aaac y $& aaac
'^a (?#xxx) (?#yyy) {3}c'x aaac y $& aaac
(?<![cd])b dbcb n - -
(?<![cd])[ab] dbaacb y $& a
(?<!(c|d))b dbcb n - -
(?<!(c|d))[ab] dbaacb y $& a
(?<!cd)[ab] cdaccb y $& b
^(?:a?b?)*$ a-- n - -
((?s)^a(.))((?m)^b$) a\nb\nc\n y $1;$2;$3 a\n;\n;b
((?m)^b$) a\nb\nc\n y $1 b
(?m)^b a\nb\n y $& b
(?m)^(b) a\nb\n y $1 b
((?m)^b) a\nb\n y $1 b
\n((?m)^b) a\nb\n y $1 b
((?s).)c(?!.) a\nb\nc\n y $1 \n
((?s).)c(?!.) a\nb\nc\n y $1:$& \n:\nc
((?s)b.)c(?!.) a\nb\nc\n y $1 b\n
((?s)b.)c(?!.) a\nb\nc\n y $1:$& b\n:b\nc
^b a\nb\nc\n n - -
()^b a\nb\nc\n n - -
((?m)^b) a\nb\nc\n y $1 b
(?(1)a|b) a n - -
(?(1)b|a) a y $& a
(x)?(?(1)a|b) a n - -
(x)?(?(1)b|a) a y $& a
()?(?(1)b|a) a y $& a
()(?(1)b|a) a n - -
()?(?(1)a|b) a y $& a
^(\()?blah(?(1)(\)))$ (blah) y $2 )
^(\()?blah(?(1)(\)))$ blah y ($2) ()
^(\()?blah(?(1)(\)))$ blah) n - -
^(\()?blah(?(1)(\)))$ (blah n - -
^(\(+)?blah(?(1)(\)))$ (blah) y $2 )
^(\(+)?blah(?(1)(\)))$ blah y ($2) ()
^(\(+)?blah(?(1)(\)))$ blah) n - -
^(\(+)?blah(?(1)(\)))$ (blah n - -
(?(1?)a|b) a c - Switch condition not recognized
(?(1)a|b|c) a c - Switch (?(condition)... contains too many branches
(?(?{0})a|b) a n - -
(?(?{0})b|a) a y $& a
(?(?{1})b|a) a n - -
(?(?{1})a|b) a y $& a
(?(?!a)a|b) a n - -
(?(?!a)b|a) a y $& a
(?(?=a)b|a) a n - -
(?(?=a)a|b) a y $& a
(?=(a+?))(\1ab) aaab y $2 aab
^(?=(a+?))\1ab aaab n - -
(\w+:)+ one: y $1 one:
$(?<=^(a)) a y $1 a
(?=(a+?))(\1ab) aaab y $2 aab
^(?=(a+?))\1ab aaab n - -
([\w:]+::)?(\w+)$ abcd: n - -
([\w:]+::)?(\w+)$ abcd y $1-$2 -abcd
([\w:]+::)?(\w+)$ xy:z:::abcd y $1-$2 xy:z:::-abcd
^[^bcd]*(c+) aexycd y $1 c
(a*)b+ caab y $1 aa
([\w:]+::)?(\w+)$ abcd: n - -
([\w:]+::)?(\w+)$ abcd y $1-$2 -abcd
([\w:]+::)?(\w+)$ xy:z:::abcd y $1-$2 xy:z:::-abcd
^[^bcd]*(c+) aexycd y $1 c
(?{$a=2})a*aa(?{local$a=$a+1})k*c(?{$b=$a}) yaaxxaaaacd y $b 3
(?{$a=2})(a(?{local$a=$a+1}))*aak*c(?{$b=$a}) yaaxxaaaacd y $b 4