glibc/posix/PTESTS

342 lines
8.0 KiB
Plaintext
Raw Normal View History

# 2.8.2 Regular Expression General Requirement
2<EFBFBD>4<EFBFBD>bb*<2A>abbbc<62>
2<EFBFBD>2<EFBFBD>bb*<2A>ababbbc<62>
7<EFBFBD>9<EFBFBD>A#*::<3A>A:A#:qA::qA#::qA##::q<>
1<EFBFBD>5<EFBFBD>A#*::<3A>A##::A#::qA::qA#:q<>
# 2.8.3.1.2 BRE Special Characters
# GA108
2<EFBFBD>2<EFBFBD>\.<2E>a.c<>
2<EFBFBD>2<EFBFBD>\[<5B>a[c<>
2<EFBFBD>2<EFBFBD>\\<5C>a\c<>
2<EFBFBD>2<EFBFBD>\*<2A>a*c<>
2<EFBFBD>2<EFBFBD>\^<5E>a^c<>
2<EFBFBD>2<EFBFBD>\$<24>a$c<>
7<EFBFBD>11<EFBFBD>X\*Y\*8<>Y*8X*8X*Y*8<>
# GA109
2<EFBFBD>2<EFBFBD>[.]<5D>a.c<>
2<EFBFBD>2<EFBFBD>[[]<5D>a[c<>
-1<>-1<>[[]<5D>ac<61>
2<EFBFBD>2<EFBFBD>[\]<5D>a\c<>
1<EFBFBD>1<EFBFBD>[\a]<5D>abc<62>
2<EFBFBD>2<EFBFBD>[\.]<5D>a\.c<>
2<EFBFBD>2<EFBFBD>[\.]<5D>a.\c<>
2<EFBFBD>2<EFBFBD>[*]<5D>a*c<>
2<EFBFBD>2<EFBFBD>[$]<5D>a$c<>
2<EFBFBD>2<EFBFBD>[X*Y8]<5D>7*8YX<59>
# GA110
2<EFBFBD>2<EFBFBD>*<2A>a*c<>
3<EFBFBD>4<EFBFBD>*a<>*b*a*c<>
1<EFBFBD>5<EFBFBD>**9=<3D>***9=9<>
# GA111
1<EFBFBD>1<EFBFBD>^*<2A>*bc<62>
-1<>-1<>^*<2A>a*c<>
-1<>-1<>^*<2A>^*ab<61>
1<EFBFBD>5<EFBFBD>^**9=<3D>***9=<3D>
-1<>-1<>^*5<*9<>5<9*5<*9<>
# GA112
2<EFBFBD>3<EFBFBD>\(*b\)<29>a*b<>
-1<>-1<>\(*b\)<29>ac<61>
1<EFBFBD>6<EFBFBD>A\(**9\)=<3D>A***9=79<37>
# GA113(1)
1<EFBFBD>3<EFBFBD>\(^*ab\)<29>*ab<61>
-1<>-1<>\(^*ab\)<29>^*ab<61>
-1<>-1<>\(^*b\)<29>a*b<>
-1<>-1<>\(^*b\)<29>^*b<>
### GA113(2) GNU regex implements GA113(1)
##-1<>-1<>\(^*ab\)<29>*ab<61>
##-1<>-1<>\(^*ab\)<29>^*ab<61>
##1<>1<EFBFBD>\(^*b\)<29>b<EFBFBD>
##1<>3<EFBFBD>\(^*b\)<29>^^b<>
# GA114
1<EFBFBD>3<EFBFBD>a^b<>a^b<>
1<EFBFBD>3<EFBFBD>a\^b<>a^b<>
1<EFBFBD>1<EFBFBD>^^<5E>^bc<62>
2<EFBFBD>2<EFBFBD>\^<5E>a^c<>
1<EFBFBD>1<EFBFBD>[c^b]<5D>^abc<62>
1<EFBFBD>1<EFBFBD>[\^ab]<5D>^ab<61>
2<EFBFBD>2<EFBFBD>[\^ab]<5D>c\d<>
-1<>-1<>[^^]<5D>^<5E>
1<EFBFBD>3<EFBFBD>\(a^b\)<29>a^b<>
1<EFBFBD>3<EFBFBD>\(a\^b\)<29>a^b<>
2<EFBFBD>2<EFBFBD>\(\^\)<29>a^b<>
# GA115
3<EFBFBD>3<EFBFBD>$$<24>ab$<24>
-1<>-1<>$$<24>$ab<61>
2<EFBFBD>3<EFBFBD>$c<>a$c<>
2<EFBFBD>2<EFBFBD>[$]<5D>a$c<>
1<EFBFBD>2<EFBFBD>\$a<>$a<>
3<EFBFBD>3<EFBFBD>\$$<24>ab$<24>
2<EFBFBD>6<EFBFBD>A\([34]$[34]\)B<>XA4$3BY<42>
1998-11-05 13:26:43 +01:00
# 2.8.3.1.3 Periods in BREs
# GA116
1<EFBFBD>1<EFBFBD>.<2E>abc<62>
-1<>-1<>.ab<61>abc<62>
1<EFBFBD>3<EFBFBD>ab.<2E>abc<62>
1<EFBFBD>3<EFBFBD>a.b<>a,b<>
-1<>-1<>.......<2E>PqRs6<73>
1<EFBFBD>7<EFBFBD>.......<2E>PqRs6T8<54>
# 2.8.3.2 RE Bracket Expression
# GA118
2<EFBFBD>2<EFBFBD>[abc]<5D>xbyz<79>
-1<>-1<>[abc]<5D>xyz<79>
2<EFBFBD>2<EFBFBD>[abc]<5D>xbay<61>
# GA119
2<EFBFBD>2<EFBFBD>[^a]<5D>abc<62>
4<EFBFBD>4<EFBFBD>[^]cd]<5D>cd]ef<65>
2<EFBFBD>2<EFBFBD>[^abc]<5D>axyz<79>
-1<>-1<>[^abc]<5D>abc<62>
3<EFBFBD>3<EFBFBD>[^[.a.]b]<5D>abc<62>
3<EFBFBD>3<EFBFBD>[^[=a=]b]<5D>abc<62>
2<EFBFBD>2<EFBFBD>[^-ac]<5D>abcde-<2D>
2<EFBFBD>2<EFBFBD>[^ac-]<5D>abcde-<2D>
3<EFBFBD>3<EFBFBD>[^a-b]<5D>abcde<64>
3<EFBFBD>3<EFBFBD>[^a-bd-e]<5D>dec<65>
2<EFBFBD>2<EFBFBD>[^---]<5D>-ab<61>
16<EFBFBD>16<EFBFBD>[^a-zA-Z0-9]<5D>pqrstVWXYZ23579#<23>
# GA120(1)
3<EFBFBD>3<EFBFBD>[]a]<5D>cd]ef<65>
1<EFBFBD>1<EFBFBD>[]-a]<5D>a_b<5F>
3<EFBFBD>3<EFBFBD>[][.-.]-0]<5D>ab0-]<5D>
1<EFBFBD>1<EFBFBD>[]^a-z]<5D>string<6E>
# GA120(2)
4<EFBFBD>4<EFBFBD>[^]cd]<5D>cd]ef<65>
0<EFBFBD>0<EFBFBD>[^]]*<2A>]]]]]]]]X<>
0<EFBFBD>0<EFBFBD>[^]]*<2A>]]]]]]]]<5D>
9<EFBFBD>9<EFBFBD>[^]]\{1,\}<7D>]]]]]]]]X<>
-1<>-1<>[^]]\{1,\}<7D>]]]]]]]]<5D>
# GA120(3)
3<EFBFBD>3<EFBFBD>[c[.].]d]<5D>ab]cd<63>
2<EFBFBD>8<EFBFBD>[a-z]*[[.].]][A-Z]*<2A>Abcd]DEFg<46>
# GA121
2<EFBFBD>2<EFBFBD>[[.a.]b]<5D>Abc<62>
1<EFBFBD>1<EFBFBD>[[.a.]b]<5D>aBc<42>
-1<>-1<>[[.a.]b]<5D>ABc<42>
3<EFBFBD>3<EFBFBD>[^[.a.]b]<5D>abc<62>
3<EFBFBD>3<EFBFBD>[][.-.]-0]<5D>ab0-]<5D>
3<EFBFBD>3<EFBFBD>[A-[.].]c]<5D>ab]!<21>
# GA122
-2<>-2<>[[.ch.]]<5D>abc<62>
-2<>-2<>[[.ab.][.CD.][.EF.]]<5D>yZabCDEFQ9<51>
# GA125
2<EFBFBD>2<EFBFBD>[[=a=]b]<5D>Abc<62>
1<EFBFBD>1<EFBFBD>[[=a=]b]<5D>aBc<42>
-1<>-1<>[[=a=]b]<5D>ABc<42>
3<EFBFBD>3<EFBFBD>[^[=a=]b]<5D>abc<62>
# GA126
#W the expected result for [[:alnum:]]* is 2-7 which is wrong
0<EFBFBD>0<EFBFBD>[[:alnum:]]*<2A> aB28gH<67>
2<EFBFBD>7<EFBFBD>[[:alnum:]][[:alnum:]]*<2A> aB28gH<67>
#W the expected result for [^[:alnum:]]* is 2-5 which is wrong
0<EFBFBD>0<EFBFBD>[^[:alnum:]]*<2A>2 ,a<7F>
2<EFBFBD>5<EFBFBD>[^[:alnum:]][^[:alnum:]]*<2A>2 ,a<7F>
#W the expected result for [[:alpha:]]* is 2-5 which is wrong
0<EFBFBD>0<EFBFBD>[[:alpha:]]*<2A> aBgH2<48>
2<EFBFBD>5<EFBFBD>[[:alpha:]][[:alpha:]]*<2A> aBgH2<48>
1<EFBFBD>6<EFBFBD>[^[:alpha:]]*<2A>2 8,a<7F>
1<EFBFBD>2<EFBFBD>[[:blank:]]*<2A> <>
1<EFBFBD>8<EFBFBD>[^[:blank:]]*<2A>aB28gH, <20>
1<EFBFBD>2<EFBFBD>[[:cntrl:]]*<2A>  <20>
1<EFBFBD>8<EFBFBD>[^[:cntrl:]]*<2A>aB2 8gh,<2C>
#W the expected result for [[:digit:]]* is 2-3 which is wrong
0<EFBFBD>0<EFBFBD>[[:digit:]]*<2A>a28<32>
2<EFBFBD>3<EFBFBD>[[:digit:]][[:digit:]]*<2A>a28<32>
1<EFBFBD>8<EFBFBD>[^[:digit:]]*<2A>aB gH,<>
1<EFBFBD>7<EFBFBD>[[:graph:]]*<2A>aB28gH, <20>
1<EFBFBD>3<EFBFBD>[^[:graph:]]*<2A> ,<2C>
1<EFBFBD>2<EFBFBD>[[:lower:]]*<2A>agB<67>
1<EFBFBD>8<EFBFBD>[^[:lower:]]*<2A>B2 8H,a<7F>
1<EFBFBD>8<EFBFBD>[[:print:]]*<2A>aB2 8gH, <09>
1<EFBFBD>2<EFBFBD>[^[:print:]]*<2A>  <20>
#W the expected result for [[:punct:]]* is 2-2 which is wrong
0<EFBFBD>0<EFBFBD>[[:punct:]]*<2A>a,2<>
2<EFBFBD>3<EFBFBD>[[:punct:]][[:punct:]]*<2A>a,,2<>
1<EFBFBD>9<EFBFBD>[^[:punct:]]*<2A>aB2 8gH<48>
1<EFBFBD>3<EFBFBD>[[:space:]]*<2A> <>
#W the expected result for [^[:space:]]* is 2-9 which is wrong
0<EFBFBD>0<EFBFBD>[^[:space:]]*<2A> aB28gH, <09>
2<EFBFBD>9<EFBFBD>[^[:space:]][^[:space:]]*<2A> aB28gH, <09>
#W the expected result for [[:upper:]]* is 2-3 which is wrong
0<EFBFBD>0<EFBFBD>[[:upper:]]*<2A>aBH2<48>
2<EFBFBD>3<EFBFBD>[[:upper:]][[:upper:]]*<2A>aBH2<48>
1<EFBFBD>8<EFBFBD>[^[:upper:]]*<2A>a2 8g,B<7F>
#W the expected result for [[:xdigit:]]* is 2-5 which is wrong
0<EFBFBD>0<EFBFBD>[[:xdigit:]]*<2A>gaB28h<38>
2<EFBFBD>5<EFBFBD>[[:xdigit:]][[:xdigit:]]*<2A>gaB28h<38>
#W the expected result for [^[:xdigit:]]* is 2-7 which is wrong
2<EFBFBD>7<EFBFBD>[^[:xdigit:]][^[:xdigit:]]*<2A>a gH,2<7F>
# GA127
-2<>-2<>[b-a]<5D>abc<62>
1<EFBFBD>1<EFBFBD>[a-c]<5D>bbccde<64>
2<EFBFBD>2<EFBFBD>[a-b]<5D>-bc<62>
3<EFBFBD>3<EFBFBD>[a-z0-9]<5D>AB0<42>
3<EFBFBD>3<EFBFBD>[^a-b]<5D>abcde<64>
3<EFBFBD>3<EFBFBD>[^a-bd-e]<5D>dec<65>
1<EFBFBD>1<EFBFBD>[]-a]<5D>a_b<5F>
2<EFBFBD>2<EFBFBD>[+--]<5D>a,b<>
2<EFBFBD>2<EFBFBD>[--/]<5D>a.b<>
2<EFBFBD>2<EFBFBD>[^---]<5D>-ab<61>
3<EFBFBD>3<EFBFBD>[][.-.]-0]<5D>ab0-]<5D>
3<EFBFBD>3<EFBFBD>[A-[.].]c]<5D>ab]!<21>
2<EFBFBD>6<EFBFBD>bc[d-w]xy<78>abchxyz<79>
# GA129
1<EFBFBD>1<EFBFBD>[a-cd-f]<5D>dbccde<64>
-1<>-1<>[a-ce-f]<5D>dBCCdE<64>
2<EFBFBD>4<EFBFBD>b[n-zA-M]Y<>absY9Z<39>
2<EFBFBD>4<EFBFBD>b[n-zA-M]Y<>abGY9Z<39>
# GA130
3<EFBFBD>3<EFBFBD>[-xy]<5D>ac-<2D>
2<EFBFBD>4<EFBFBD>c[-xy]D<>ac-D+<2B>
2<EFBFBD>2<EFBFBD>[--/]<5D>a.b<>
2<EFBFBD>4<EFBFBD>c[--/]D<>ac.D+b<>
2<EFBFBD>2<EFBFBD>[^-ac]<5D>abcde-<2D>
1<EFBFBD>3<EFBFBD>a[^-ac]c<>abcde-<2D>
3<EFBFBD>3<EFBFBD>[xy-]<5D>zc-<2D>
2<EFBFBD>4<EFBFBD>c[xy-]7<>zc-786<38>
2<EFBFBD>2<EFBFBD>[^ac-]<5D>abcde-<2D>
2<EFBFBD>4<EFBFBD>a[^ac-]c<>5abcde-<2D>
2<EFBFBD>2<EFBFBD>[+--]<5D>a,b<>
2<EFBFBD>4<EFBFBD>a[+--]B<>Xa,By<42>
2<EFBFBD>2<EFBFBD>[^---]<5D>-ab<61>
4<EFBFBD>6<EFBFBD>X[^---]Y<>X-YXaYXbY<62>
# 2.8.3.3 BREs Matching Multiple Characters
# GA131
3<EFBFBD>4<EFBFBD>cd<EFBFBD>abcdeabcde<EFBFBD>
1<EFBFBD>2<EFBFBD>ag*b<>abcde<64>
-1<>-1<>[a-c][e-f]<5D>abcdef<65>
3<EFBFBD>4<EFBFBD>[a-c][e-f]<5D>acbedf<64>
4<EFBFBD>8<EFBFBD>abc*XYZ<59>890abXYZ#*<2A>
4<EFBFBD>9<EFBFBD>abc*XYZ<59>890abcXYZ#*<2A>
4<EFBFBD>15<EFBFBD>abc*XYZ<59>890abcccccccXYZ#*<2A>
-1<>-1<>abc*XYZ<59>890abc*XYZ#*<2A>
# GA132
2<EFBFBD>4<EFBFBD>\(*bc\)<29>a*bc<62>
1<EFBFBD>2<EFBFBD>\(ab\)<29>abcde<64>
1<EFBFBD>10<EFBFBD>\(a\(b\(c\(d\(e\(f\(g\)h\(i\(j\)\)\)\)\)\)\)\)<29>abcdefghijk<6A>
3<EFBFBD>8<EFBFBD>43\(2\(6\)*0\)AB<41>654320ABCD<43>
3<EFBFBD>9<EFBFBD>43\(2\(7\)*0\)AB<41>6543270ABCD<43>
3<EFBFBD>12<EFBFBD>43\(2\(7\)*0\)AB<41>6543277770ABCD<43>
# GA133
1<EFBFBD>10<EFBFBD>\(a\(b\(c\(d\(e\(f\(g\)h\(i\(j\)\)\)\)\)\)\)\)<29>abcdefghijk<6A>
-1<>-1<>\(a\(b\(c\(d\(e\(f\(g\)h\(i\(k\)\)\)\)\)\)\)\)<29>abcdefghijk<6A>
# GA134
2<EFBFBD>4<EFBFBD>\(bb*\)<29>abbbc<62>
2<EFBFBD>2<EFBFBD>\(bb*\)<29>ababbbc<62>
1<EFBFBD>6<EFBFBD>a\(.*b\)<29>ababbbc<62>
1<EFBFBD>2<EFBFBD>a\(b*\)<29>ababbbc<62>
1<EFBFBD>20<EFBFBD>a\(.*b\)c<>axcaxbbbcsxbbbbbbbbc<62>
# GA135
1<EFBFBD>7<EFBFBD>\(a\(b\(c\(d\(e\)\)\)\)\)\4<>abcdededede<64>
#W POSIX does not really specify whether a\(b\)*c\1 matches acb.
#W back references are supposed to expand to the last match, but what
#W if there never was a match as in this case?
-1<>-1<>a\(b\)*c\1<>acb<63>
1<EFBFBD>11<EFBFBD>\(a\(b\(c\(d\(e\(f\(g\)h\(i\(j\)\)\)\)\)\)\)\)\9<>abcdefghijjk<6A>
# GA136
#W These two tests have the same problem as the test in GA135. No match
#W of a subexpression, why should the back reference be usable?
#W 1 2 a\(b\)*c\1 acb
#W 4 7 a\(b\(c\(d\(f\)*\)\)\)\4<>xYzabcdePQRST
-1<>-1<>a\(b\)*c\1<>acb<63>
-1<>-1<>a\(b\(c\(d\(f\)*\)\)\)\4<>xYzabcdePQRST<53>
# GA137
-2<>-2<>\(a\(b\)\)\3<>foo<6F>
-2<>-2<>\(a\(b\)\)\(a\(b\)\)\5<>foo<6F>
# GA138
1<EFBFBD>2<EFBFBD>ag*b<>abcde<64>
1<EFBFBD>10<EFBFBD>a.*b<>abababvbabc<62>
2<EFBFBD>5<EFBFBD>b*c<>abbbcdeabbbbbbcde<64>
2<EFBFBD>5<EFBFBD>bbb*c<>abbbcdeabbbbbbcde<64>
1<EFBFBD>5<EFBFBD>a\(b\)*c\1<>abbcbbb<62>
-1<>-1<>a\(b\)*c\1<>abbdbd<62>
0<EFBFBD>0<EFBFBD>\([a-c]*\)\1<>abcacdef<65>
1<EFBFBD>6<EFBFBD>\([a-c]*\)\1<>abcabcabcd<63>
1<EFBFBD>2<EFBFBD>a^*b<>ab<61>
1<EFBFBD>5<EFBFBD>a^*b<>a^^^b<>
# GA139
1<EFBFBD>2<EFBFBD>a\{2\}<7D>aaaa<61>
1<EFBFBD>7<EFBFBD>\([a-c]*\)\{0,\}<7D>aabcaab<61>
1<EFBFBD>2<EFBFBD>\(a\)\1\{1,2\}<7D>aabc<62>
1<EFBFBD>3<EFBFBD>\(a\)\1\{1,2\}<7D>aaaabc<62>
#W the expression \(\(a\)\1\)\{1,2\} is ill-formed, using \2
1<EFBFBD>4<EFBFBD>\(\(a\)\2\)\{1,2\}<7D>aaaabc<62>
# GA140
1<EFBFBD>2<EFBFBD>a\{2\}<7D>aaaa<61>
-1<>-1<>a\{2\}<7D>abcd<63>
0<EFBFBD>0<EFBFBD>a\{0\}<7D>aaaa<61>
1<EFBFBD>64<EFBFBD>a\{64\}<7D>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa<61>
# GA141
1<EFBFBD>7<EFBFBD>\([a-c]*\)\{0,\}<7D>aabcaab<61>
#W the expected result for \([a-c]*\)\{2,\} is failure which isn't correct
1<EFBFBD>3<EFBFBD>\([a-c]*\)\{2,\}<7D>abcdefg<66>
1<EFBFBD>3<EFBFBD>\([a-c]*\)\{1,\}<7D>abcdefg<66>
-1<>-1<>a\{64,\}<7D>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa<61>
# GA142
1<EFBFBD>3<EFBFBD>a\{2,3\}<7D>aaaa<61>
-1<>-1<>a\{2,3\}<7D>abcd<63>
0<EFBFBD>0<EFBFBD>\([a-c]*\)\{0,0\}<7D>foo<6F>
1<EFBFBD>63<EFBFBD>a\{1,63\}<7D>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa<61>
1998-11-05 13:26:43 +01:00
# 2.8.3.4 BRE Precedence
# GA143
#W There are numerous bugs in the original version.
2<EFBFBD>19<EFBFBD>\^\[[[.].]]\\(\\1\\)\*\\{1,2\\}\$<24>a^[]\(\1\)*\{1,2\}$b<>
1<EFBFBD>6<EFBFBD>[[=*=]][[=\=]][[=]=]][[===]][[...]][[:punct:]]<5D>*\]=.;<3B>
1<EFBFBD>6<EFBFBD>[$\(*\)^]*<2A>$\()*^<5E>
1<EFBFBD>1<EFBFBD>[\1]<5D>1<EFBFBD>
1<EFBFBD>1<EFBFBD>[\{1,2\}]<5D>{<7B>
#W the expected result for \(*\)*\1* is 2-2 which isn't correct
0<EFBFBD>0<EFBFBD>\(*\)*\1*<2A>a*b*11<31>
2<EFBFBD>3<EFBFBD>\(*\)*\1*b<>a*b*11<31>
#W the expected result for \(a\(b\{1,2\}\)\{1,2\}\) is 1-5 which isn't correct
1<EFBFBD>3<EFBFBD>\(a\(b\{1,2\}\)\{1,2\}\)<29>abbab<61>
1<EFBFBD>5<EFBFBD>\(a\(b\{1,2\}\)\)\{1,2\}<7D>abbab<61>
1<EFBFBD>1<EFBFBD>^\(^\(^a$\)$\)$<24>a<EFBFBD>
1<EFBFBD>2<EFBFBD>\(a\)\1$<24>aa<61>
1<EFBFBD>3<EFBFBD>ab*<2A>abb<62>
1<EFBFBD>4<EFBFBD>ab\{2,4\}<7D>abbbc<62>
# 2.8.3.5 BRE Expression Anchoring
# GA144
1<EFBFBD>1<EFBFBD>^a<>abc<62>
-1<>-1<>^b<>abc<62>
-1<>-1<>^[a-zA-Z]<5D>99Nine<6E>
1<EFBFBD>4<EFBFBD>^[a-zA-Z]*<2A>Nine99<39>
# GA145(1)
1<EFBFBD>2<EFBFBD>\(^a\)\1<>aabc<62>
-1<>-1<>\(^a\)\1<>^a^abc<62>
1<EFBFBD>2<EFBFBD>\(^^a\)<29>^a<>
1<EFBFBD>1<EFBFBD>\(^^\)<29>^^<5E>
1<EFBFBD>3<EFBFBD>\(^abc\)<29>abcdef<65>
-1<>-1<>\(^def\)<29>abcdef<65>
### GA145(2) GNU regex implements GA145(1)
##-1<>-1<>\(^a\)\1<>aabc<62>
##1<>4<EFBFBD>\(^a\)\1<>^a^abc<62>
##-1<>-1<>\(^^a\)<29>^a<>
##1<>2<EFBFBD>\(^^\)<29>^^<5E>
# GA146
3<EFBFBD>3<EFBFBD>a$<24>cba<62>
-1<>-1<>a$<24>abc<62>
5<EFBFBD>7<EFBFBD>[a-z]*$<24>99ZZxyz<79>
#W the expected result for [a-z]*$ is failure which isn't correct
10<EFBFBD>9<EFBFBD>[a-z]*$<24>99ZZxyz99<39>
3<EFBFBD>3<EFBFBD>$$<24>ab$<24>
-1<>-1<>$$<24>$ab<61>
3<EFBFBD>3<EFBFBD>\$$<24>ab$<24>
# GA147(1)
-1<>-1<>\(a$\)\1<>bcaa<61>
-1<>-1<>\(a$\)\1<>ba$<24>
-1<>-1<>\(ab$\)<29>ab$<24>
1<EFBFBD>2<EFBFBD>\(ab$\)<29>ab<61>
4<EFBFBD>6<EFBFBD>\(def$\)<29>abcdef<65>
-1<>-1<>\(abc$\)<29>abcdef<65>
### GA147(2) GNU regex implements GA147(1)
##-1<>-1<>\(a$\)\1<>bcaa<61>
##2<>5<EFBFBD>\(a$\)\1<>ba$a$<24>
##-1<>-1<>\(ab$\)<29>ab<61>
##1<>3<EFBFBD>\(ab$\)<29>ab$<24>
# GA148
0<EFBFBD>0<EFBFBD>^$<24><>
1<EFBFBD>3<EFBFBD>^abc$<24>abc<62>
-1<>-1<>^xyz$<24>^xyz^<5E>
-1<>-1<>^234$<24>^234$<24>
1<EFBFBD>9<EFBFBD>^[a-zA-Z0-9]*$<24>2aA3bB9zZ<7A>
-1<>-1<>^[a-z0-9]*$<24>2aA3b#B9zZ<7A>