📄 testoutput3
字号:
PCRE version 3.9 02-Jan-2002/(?<!bar)foo/ foo 0: foo catfood 0: foo arfootle 0: foo rfoosh 0: foo *** FailersNo match barfooNo match towbarfooNo match/\w{3}(?<!bar)foo/ catfood 0: catfoo *** FailersNo match fooNo match barfooNo match towbarfooNo match/(?<=(foo)a)bar/ fooabar 0: bar 1: foo *** FailersNo match barNo match foobbarNo match /\Aabc\z/m abc 0: abc *** FailersNo match abc\n No match qqq\nabcNo match abc\nzzzNo match qqq\nabc\nzzzNo match"(?>.*/)foo" /this/is/a/very/long/line/in/deed/with/very/many/slashes/in/it/you/see/No match"(?>.*/)foo" /this/is/a/very/long/line/in/deed/with/very/many/slashes/in/and/foo 0: /this/is/a/very/long/line/in/deed/with/very/many/slashes/in/and/foo/(?>(\.\d\d[1-9]?))\d+/ 1.230003938 0: .230003938 1: .23 1.875000282 0: .875000282 1: .875 *** Failers No match 1.235 No match/^((?>\w+)|(?>\s+))*$/ now is the time for all good men to come to the aid of the party 0: now is the time for all good men to come to the aid of the party 1: party *** FailersNo match this is not a line with only words and spaces!No match /(\d+)(\w)/ 12345a 0: 12345a 1: 12345 2: a 12345+ 0: 12345 1: 1234 2: 5/((?>\d+))(\w)/ 12345a 0: 12345a 1: 12345 2: a *** FailersNo match 12345+ No match/(?>a+)b/ aaab 0: aaab/((?>a+)b)/ aaab 0: aaab 1: aaab/(?>(a+))b/ aaab 0: aaab 1: aaa/(?>b)+/ aaabbbccc 0: bbb/(?>a+|b+|c+)*c/ aaabbbbccccd 0: aaabbbbc/((?>[^()]+)|\([^()]*\))+/ ((abc(ade)ufh()()x 0: abc(ade)ufh()()x 1: x /\(((?>[^()]+)|\([^()]+\))+\)/ (abc) 0: (abc) 1: abc (abc(def)xyz) 0: (abc(def)xyz) 1: xyz *** FailersNo match ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa No match/a(?-i)b/i ab 0: ab *** Failers No match AbNo match aBNo match ABNo match /(a (?x)b c)d e/ a bcd e 0: a bcd e 1: a bc *** FailersNo match a b cd eNo match abcd e No match a bcde No match /(a b(?x)c d (?-x)e f)/ a bcde f 0: a bcde f 1: a bcde f *** FailersNo match abcdef No match/(a(?i)b)c/ abc 0: abc 1: ab aBc 0: aBc 1: aB *** FailersNo match abCNo match aBC No match AbcNo match ABcNo match ABCNo match AbCNo match /a(?i:b)c/ abc 0: abc aBc 0: aBc *** Failers No match ABCNo match abCNo match aBCNo match /a(?i:b)*c/ aBc 0: aBc aBBc 0: aBBc *** Failers No match aBCNo match aBBCNo match /a(?=b(?i)c)\w\wd/ abcd 0: abcd abCd 0: abCd *** FailersNo match aBCdNo match abcD No match /(?s-i:more.*than).*million/i more than million 0: more than million more than MILLION 0: more than MILLION more \n than Million 0: more \x0a than Million *** FailersNo match MORE THAN MILLION No match more \n than \n million No match/(?:(?s-i)more.*than).*million/i more than million 0: more than million more than MILLION 0: more than MILLION more \n than Million 0: more \x0a than Million *** FailersNo match MORE THAN MILLION No match more \n than \n million No match /(?>a(?i)b+)+c/ abc 0: abc aBbc 0: aBbc aBBc 0: aBBc *** FailersNo match AbcNo match abAb No match abbC No match /(?=a(?i)b)\w\wc/ abc 0: abc aBc 0: aBc *** FailersNo match Ab No match abCNo match aBC No match /(?<=a(?i)b)(\w\w)c/ abxxc 0: xxc 1: xx aBxxc 0: xxc 1: xx *** FailersNo match AbxxcNo match ABxxcNo match abxxC No match/(?:(a)|b)(?(1)A|B)/ aA 0: aA 1: a bB 0: bB *** FailersNo match aBNo match bA No match/^(a)?(?(1)a|b)+$/ aa 0: aa 1: a b 0: b bb 0: bb *** FailersNo match ab No match/^(?(?=abc)\w{3}:|\d\d)$/ abc: 0: abc: 12 0: 12 *** FailersNo match 123No match xyz No match/^(?(?!abc)\d\d|\w{3}:)$/ abc: 0: abc: 12 0: 12 *** FailersNo match 123No match xyz No match /(?(?<=foo)bar|cat)/ foobar 0: bar cat 0: cat fcat 0: cat focat 0: cat *** FailersNo match foocat No match/(?(?<!foo)cat|bar)/ foobar 0: bar cat 0: cat fcat 0: cat focat 0: cat *** FailersNo match foocat No match/( \( )? [^()]+ (?(1) \) |) /x abcd 0: abcd (abcd) 0: (abcd) 1: ( the quick (abcd) fox 0: the quick (abcd 0: abcd/( \( )? [^()]+ (?(1) \) ) /x abcd 0: abcd (abcd) 0: (abcd) 1: ( the quick (abcd) fox 0: the quick (abcd 0: abcd/^(?(2)a|(1)(2))+$/ 12 0: 12 1: 1 2: 2 12a 0: 12a 1: 1 2: 2 12aa 0: 12aa 1: 1 2: 2 *** FailersNo match 1234 No match/((?i)blah)\s+\1/ blah blah 0: blah blah 1: blah BLAH BLAH 0: BLAH BLAH 1: BLAH Blah Blah 0: Blah Blah 1: Blah blaH blaH 0: blaH blaH 1: blaH *** FailersNo match blah BLAHNo match Blah blah No match blaH blah No match/((?i)blah)\s+(?i:\1)/ blah blah 0: blah blah 1: blah BLAH BLAH 0: BLAH BLAH 1: BLAH Blah Blah 0: Blah Blah 1: Blah blaH blaH 0: blaH blaH 1: blaH blah BLAH 0: blah BLAH 1: blah Blah blah 0: Blah blah 1: Blah blaH blah 0: blaH blah 1: blaH/(?>a*)*/ a 0: a aa 0: aa aaaa 0: aaaa /(abc|)+/ abc 0: abc 1: abcabc 0: abcabc 1: abcabcabc 0: abcabcabc 1: xyz 0: 1: /([a]*)*/ a 0: a 1: aaaaa 0: aaaaa 1: /([ab]*)*/ a 0: a 1: b 0: b 1: ababab 0: ababab 1: aaaabcde 0: aaaab 1: bbbb 0: bbbb 1: /([^a]*)*/ b 0: b 1: bbbb 0: bbbb 1: aaa 0: 1: /([^ab]*)*/ cccc 0: cccc 1: abab 0: 1: /([a]*?)*/ a 0: 1: aaaa 0: 1: /([ab]*?)*/ a 0: 1: b 0: 1: abab 0: 1: baba 0: 1: /([^a]*?)*/ b 0: 1: bbbb 0: 1: aaa 0: 1: /([^ab]*?)*/ c 0: 1: cccc 0: 1: baba 0: 1: /(?>a*)*/ a 0: a aaabcde 0: aaa /((?>a*))*/ aaaaa 0: aaaaa 1: aabbaa 0: aa 1: /((?>a*?))*/ aaaaa 0: 1: aabbaa 0: 1: /(?(?=[^a-z]+[a-z]) \d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} ) /x 12-sep-98 0: 12-sep-98 12-09-98 0: 12-09-98 *** FailersNo match sep-12-98No match /(?<=(foo))bar\1/ foobarfoo 0: barfoo 1: foo foobarfootling 0: barfoo 1: foo *** FailersNo match foobarNo match barfoo No match/(?i:saturday|sunday)/ saturday 0: saturday sunday 0: sunday Saturday 0: Saturday Sunday 0: Sunday SATURDAY 0: SATURDAY SUNDAY 0: SUNDAY SunDay 0: SunDay /(a(?i)bc|BB)x/ abcx 0: abcx 1: abc aBCx 0: aBCx 1: aBC bbx 0: bbx 1: bb BBx 0: BBx 1: BB *** FailersNo match abcXNo match aBCXNo match bbXNo match BBX No match/^([ab](?i)[cd]|[ef])/ ac 0: ac 1: ac aC 0: aC 1: aC bD 0: bD 1: bD elephant 0: e 1: e Europe 0: E 1: E frog 0: f 1: f France 0: F 1: F *** FailersNo match Africa No match/^(ab|a(?i)[b-c](?m-i)d|x(?i)y|z)/ ab 0: ab 1: ab aBd 0: aBd 1: aBd xy 0: xy 1: xy xY 0: xY 1: xY zebra 0: z 1: z Zambesi 0: Z 1: Z *** FailersNo match aCD No match XY No match/(?<=foo\n)^bar/m foo\nbar 0: bar *** FailersNo match barNo match baz\nbar No match/(?<=(?<!foo)bar)baz/ barbaz 0: baz barbarbaz 0: baz koobarbaz 0: baz *** FailersNo match bazNo match foobarbaz No match/The case of aaaaaa is missed out below because I think Perl 5.005_02 gets//it wrong; it sets $1 to aaa rather than aa. Compare the following test,/No match/where it does set $1 to aa when matching aaaaaa./No match/^(a\1?){4}$/ aNo match aaNo match aaaNo match aaaa 0: aaaa 1: a aaaaa 0: aaaaa 1: a aaaaaaa 0: aaaaaaa 1: a aaaaaaaaNo match aaaaaaaaaNo match aaaaaaaaaa 0: aaaaaaaaaa 1: aaaa aaaaaaaaaaaNo match aaaaaaaaaaaaNo match aaaaaaaaaaaaaNo match aaaaaaaaaaaaaaNo match aaaaaaaaaaaaaaaNo match aaaaaaaaaaaaaaaa No match/^(a\1?)(a\1?)(a\2?)(a\3?)$/ aNo match aaNo match aaaNo match aaaa 0: aaaa 1: a 2: a 3: a 4: a aaaaa 0: aaaaa 1: a 2: aa 3: a 4: a aaaaaa 0: aaaaaa 1: a 2: aa 3: a 4: aa aaaaaaa 0: aaaaaaa 1: a 2: aa 3: aaa 4: a aaaaaaaaNo match aaaaaaaaaNo match aaaaaaaaaa 0: aaaaaaaaaa 1: a 2: aa 3: aaa 4: aaaa aaaaaaaaaaaNo match aaaaaaaaaaaaNo match aaaaaaaaaaaaaNo match aaaaaaaaaaaaaaNo match aaaaaaaaaaaaaaaNo match aaaaaaaaaaaaaaaa No match/The following tests are taken from the Perl 5.005 test suite; some of them//are compatible with 5.004, but I'd rather not have to sort them out./No match/abc/ abc 0: abc xabcy 0: abc ababc 0: abc *** FailersNo match xbcNo match axcNo match abxNo match/ab*c/ abc 0: abc/ab*bc/ abc 0: abc abbc 0: abbc abbbbc 0: abbbbc/.{1}/ abbbbc 0: a/.{3,4}/ abbbbc 0: abbb/ab{0,}bc/ abbbbc 0: abbbbc/ab+bc/ abbc 0: abbc *** FailersNo match abcNo match abqNo match/ab{1,}bc//ab+bc/ abbbbc 0: abbbbc/ab{1,}bc/ abbbbc 0: abbbbc/ab{1,3}bc/ abbbbc 0: abbbbc/ab{3,4}bc/ abbbbc 0: abbbbc/ab{4,5}bc/ *** FailersNo match abqNo match abbbbcNo match/ab?bc/ abbc 0: abbc abc 0: abc/ab{0,1}bc/ abc 0: abc/ab?bc//ab?c/ abc 0: abc/ab{0,1}c/ abc 0: abc/^abc$/ abc 0: abc *** FailersNo match abbbbcNo match abccNo match/^abc/ abcc 0: abc/^abc$//abc$/ aabc 0: abc *** FailersNo match aabc 0: abc aabcdNo match/^/ abc 0: /$/ abc 0: /a.c/ abc 0: abc axc 0: axc/a.*c/ axyzc 0: axyzc/a[bc]d/ abd 0: abd *** FailersNo match axyzdNo match abcNo match/a[b-d]e/ ace 0: ace/a[b-d]/ aac 0: ac/a[-b]/ a- 0: a-/a[b-]/ a- 0: a-/a]/ a] 0: a]/a[]]b/ a]b 0: a]b/a[^bc]d/ aed 0: aed *** FailersNo match abdNo match abdNo match/a[^-b]c/ adc 0: adc/a[^]b]c/ adc 0: adc *** FailersNo match a-c 0: a-c a]cNo match/\ba\b/ a- 0: a -a 0: a -a- 0: a/\by\b/ *** FailersNo match xyNo match yzNo match xyzNo match/\Ba\B/ *** Failers 0: a a-No match -aNo match -a-No match/\By\b/ xy 0: y/\by\B/ yz 0: y/\By\B/ xyz 0: y/\w/ a 0: a/\W/ - 0: - *** Failers 0: * - 0: - aNo match/a\sb/ a b 0: a b/a\Sb/ a-b 0: a-b *** FailersNo match a-b 0: a-b a bNo match/\d/ 1 0: 1/\D/ - 0: - *** Failers 0: * - 0: - 1No match/[\w]/ a 0: a/[\W]/ - 0: - *** Failers 0: * - 0: - aNo match/a[\s]b/ a b 0: a b/a[\S]b/ a-b 0: a-b *** FailersNo match a-b 0: a-b a bNo match/[\d]/ 1 0: 1/[\D]/ - 0: - *** Failers 0: * - 0: - 1No match/ab|cd/ abc 0: ab abcd 0: ab/()ef/ def 0: ef 1: /$b//a\(b/ a(b 0: a(b/a\(*b/ ab 0: ab a((b 0: a((b/a\\b/ a\bNo match/((a))/ abc 0: a 1: a 2: a/(a)b(c)/ abc 0: abc 1: a 2: c/a+b+c/ aabbabc 0: abc/a{1,}b{1,}c/ aabbabc 0: abc/a.+?c/ abcabc 0: abc/(a+|b)*/ ab 0: ab 1: b/(a+|b){0,}/ ab 0: ab 1: b/(a+|b)+/ ab 0: ab 1: b/(a+|b){1,}/ ab 0: ab 1: b/(a+|b)?/ ab 0: a 1: a/(a+|b){0,1}/ ab 0: a 1: a/[^ab]*/ cde 0: cde/abc/ *** FailersNo match bNo match /a*/ /([abc])*d/ abbbcd 0: abbbcd 1: c/([abc])*bcd/ abcd 0: abcd 1: a/a|b|c|d|e/ e 0: e/(a|b|c|d|e)f/ ef 0: ef 1: e/abcd*efg/ abcdefg 0: abcdefg/ab*/ xabyabbbz 0: ab xayabbbz 0: a/(ab|cd)e/ abcde 0: cde 1: cd/[abhgefdc]ij/ hij 0: hij/^(ab|cd)e//(abc|)ef/ abcdef 0: ef 1: /(a|b)c*d/ abcd 0: bcd 1: b/(ab|ab*)bc/ abc 0: abc 1: a/a([bc]*)c*/ abc 0: abc 1: bc/a([bc]*)(c*d)/ abcd 0: abcd 1: bc 2: d/a([bc]+)(c*d)/ abcd 0: abcd 1: bc 2: d/a([bc]*)(c+d)/ abcd 0: abcd 1: b 2: cd/a[bcd]*dcdcde/ adcdcde 0: adcdcde/a[bcd]+dcdcde/ *** FailersNo match abcdeNo match adcdcdeNo match/(ab|a)b*c/ abc 0: abc 1: ab/((a)(b)c)(d)/ abcd 0: abcd 1: abc 2: a 3: b 4: d/[a-zA-Z_][a-zA-Z0-9_]*/ alpha 0: alpha/^a(bc+|b[eh])g|.h$/ abh 0: bh/(bc+d$|ef*g.|h?i(j|k))/ effgz 0: effgz 1: effgz ij 0: ij 1: ij 2: j reffgz 0: effgz 1: effgz *** FailersNo match effgNo match bcddNo match/((((((((((a))))))))))/ a 0: a 1: a 2: a 3: a 4: a 5: a 6: a 7: a 8: a 9: a10: a/((((((((((a))))))))))\10/ aa 0: aa 1: a 2: a 3: a 4: a 5: a 6: a 7: a 8: a 9: a10: a/(((((((((a)))))))))/ a 0: a 1: a 2: a 3: a 4: a 5: a 6: a 7: a 8: a 9: a/multiple words of text/ *** FailersNo match aaNo match uh-uhNo match/multiple words/ multiple words, yeah 0: multiple words/(.*)c(.*)/ abcde 0: abcde 1: ab 2: de/\((.*), (.*)\)/ (a, b) 0: (a, b) 1: a 2: b/[k]//abcd/ abcd 0: abcd/a(bc)d/ abcd 0: abcd 1: bc/a[-]?c/ ac 0: ac/(abc)\1/ abcabc 0: abcabc 1: abc/([a-c]*)\1/ abcabc 0: abcabc 1: abc/(a)|\1/ a 0: a 1: a *** Failers 0: a 1: a ab 0: a 1: a xNo match
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -