Created
April 24, 2020 09:43
-
-
Save quasilyte/c8e018752bd249a87470716217b1e916 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Parser test cases: | |
// Empty pattern. | |
{``, `{}`}, | |
// Anchors. | |
{`^`, `^`}, | |
{`^^`, `{^ ^}`}, | |
{`$`, `$`}, | |
{`$$`, `{$ $}`}, | |
// Simple literals and chars. | |
{` `, ` `}, | |
{` `, ` `}, | |
{`x`, `x`}, | |
{`abc`, `abc`}, | |
{`□`, `□`}, | |
{`✓`, `✓`}, | |
{`✓✓`, `✓✓`}, | |
// Dots and alternations (or). | |
{`.`, `.`}, | |
{`..`, `{. .}`}, | |
{`...`, `{. . .}`}, | |
{`.|.`, `(or . .)`}, | |
{`.|✓|.`, `(or . ✓ .)`}, | |
{`✓.|.`, `(or {✓ .} .)`}, | |
{`.|✓.`, `(or . {✓ .})`}, | |
{`..✓|.`, `(or {. . ✓} .)`}, | |
{`.|..|..✓`, `(or . {. .} {. . ✓})`}, | |
{`.|...|..`, `(or . {. . .} {. .})`}, | |
// Capturing groups. | |
{`()`, `(capture {})`}, | |
{`(.)`, `(capture .)`}, | |
{`(.✓)`, `(capture {. ✓})`}, | |
{`(x)|(y)`, `(or (capture x) (capture y))`}, | |
{`(x)(y)`, `{(capture x) (capture y)}`}, | |
{`✓(x)y`, `{✓ (capture x) y}`}, | |
{`a(x1|y1)b`, `{a (capture (or x1 y1)) b}`}, | |
// Non-capturing groups without flags. | |
{`x(?:)y`, `{x (group {}) y}`}, | |
{`x(?:.)y`, `{x (group .) y}`}, | |
{`x(?:ab)y`, `{x (group ab) y}`}, | |
{`(?:a|b)`, `(group (or a b))`}, | |
{`(?:^a|bc)c`, `{(group (or {^ a} bc)) c}`}, | |
// Flag-only groups. | |
{`x(?i)y`, `{x (flags ?i) y}`}, | |
{`x(?i-m)y`, `{x (flags ?i-m) y}`}, | |
{`x(?-im)y`, `{x (flags ?-im) y}`}, | |
// Non-capturing groups with flags. | |
{`x(?i:)y`, `{x (group {} ?i) y}`}, | |
{`x(?im:.)y`, `{x (group . ?im) y}`}, | |
{`x(?i-m:ab)y`, `{x (group ab ?i-m) y}`}, | |
// Named captures. | |
{`x(?P<g>)y`, `{x (capture {} g) y}`}, | |
{`x(?P<name>.)y`, `{x (capture . name) y}`}, | |
{`x(?P<x1>ab)y`, `{x (capture ab x1) y}`}, | |
{`x(?<x12>ab)y`, `{x (capture ab x12) y}`}, | |
{`x(?'x12'ab)y`, `{x (capture ab x12) y}`}, | |
// Atomic groups. PCRE-only. | |
{`(?>)`, `(atomic {})`}, | |
{`(?>foo)`, `(atomic foo)`}, | |
// Comments. PCRE-only. | |
{`a(?#)b`, `{a /*(?#)*/ b}`}, | |
{`a(?#foo\)b`, `{a /*(?#foo\)*/ b}`}, | |
// Quantifiers. | |
{`x+`, `(+ x)`}, | |
{`x+|y+`, `(or (+ x) (+ y))`}, | |
{`x+y+`, `{(+ x) (+ y)}`}, | |
{`x+y+|z+`, `(or {(+ x) (+ y)} (+ z))`}, | |
{`(ab)+`, `(+ (capture ab))`}, | |
{`(.b)+`, `(+ (capture {. b}))`}, | |
{`x+y*z+`, `{(+ x) (* y) (+ z)}`}, | |
{`abc+`, `{ab (+ c)}`}, | |
// Non-greedy modifiers. | |
{`x+?|y+?`, `(or (non-greedy (+ x)) (non-greedy (+ y)))`}, | |
{`x*?|y*?`, `(or (non-greedy (* x)) (non-greedy (* y)))`}, | |
{`x??|y??`, `(or (non-greedy (? x)) (non-greedy (? y)))`}, | |
// Possessive modifiers. PCRE-only. | |
{`x++|x*+`, `(or (possessive (+ x)) (possessive (* x)))`}, | |
{`[ab]?+|x{2,}+`, `(or (possessive (? [a b])) (possessive (repeat x {2,})))`}, | |
// Escapes and escape chars. | |
{`\d\d+`, `{\d (+ \d)}`}, | |
{`\..`, `{\. .}`}, | |
{`\1`, `\1`}, | |
{`\✓b`, `{\✓ b}`}, | |
{`\àb`, `{\à b}`}, | |
// Short Unicode escapes. | |
{`\pL+d`, `{(+ \pL) d}`}, | |
// Full Unicode escapes. | |
{`\p{Greek}\p{L}`, `{\p{Greek} \p{L}}`}, | |
{`\P{Greek}\p{^L}`, `{\P{Greek} \p{^L}}`}, | |
// Octal escapes. | |
{`\0`, `\0`}, | |
{`\01`, `\01`}, | |
{`\012`, `\012`}, | |
{`\777`, `\777`}, | |
{`\78`, `{\7 8}`}, | |
{`\778`, `{\77 8}`}, | |
// Short hex escapes. | |
{`\xfff`, `{\xff f}`}, | |
{`\xab1`, `{\xab 1}`}, | |
// This is not a valid syntax for hex escapes, but PHP-PCRE accepts them. | |
// Regexp validator can report them, if enabled. | |
{`\x2[\x3\x4]`, `{\x2 [\x3 \x4]}`}, | |
// Full hex escapes. | |
{`\x{}b`, `{\x{} b}`}, | |
{`\x{1}b`, `{\x{1} b}`}, | |
{`\x{ABC}b`, `{\x{ABC} b}`}, | |
// Char classes. | |
{`[1]`, `[1]`}, | |
{`[1]a`, `{[1] a}`}, | |
{`[-a]`, `[- a]`}, | |
{`[a-]`, `[a -]`}, | |
{`[a-z]a`, `{[a-z] a}`}, | |
{`[a-z0-9]`, `[a-z 0-9]`}, | |
{`[0-9-]`, `[0-9 -]`}, | |
{`[\da-z_A-Z]`, `[\d a-z _ A-Z]`}, | |
{`[\(-\)ab]`, `[\(-\) a b]`}, | |
{`[\]\]\d]a`, `{[\] \] \d] a}`}, | |
{`[[\[]a`, `{[[ \[] a}`}, | |
{`[a|b]`, `[a | b]`}, | |
{`[a+b]`, `[a + b]`}, | |
{`[a*b]`, `[a * b]`}, | |
{`[x{1}]`, `[x '{' 1 '}']`}, | |
{`[]]`, `[]]`}, | |
{`[][]`, `[] []`}, | |
// Negated char classes. | |
{`[^1]a`, `{[^1] a}`}, | |
{`[^-a]`, `[^- a]`}, | |
{`[^a-]`, `[^a -]`}, | |
{`[^a-z]a`, `{[^a-z] a}`}, | |
{`[^a-z0-9]`, `[^a-z 0-9]`}, | |
{`[^\da-z_A-Z]`, `[^\d a-z _ A-Z]`}, | |
{`[^\(-\)ab]`, `[^\(-\) a b]`}, | |
{`[^\]\]\d]a`, `{[^\] \] \d] a}`}, | |
{`[^[\[]a`, `{[^[ \[] a}`}, | |
{`[^1abc]`, `[^1 a b c]`}, | |
{`[^]]`, `[^]]`}, | |
{`[^][]`, `[^] []`}, | |
{`[^\040\041\043-\133\135-\176]`, `[^\040 \041 \043-\133 \135-\176]`}, | |
// Char class ranges. | |
// We parse a-\d and it's something that should be | |
// handled by post-parsing validator. | |
{`[\d-a]`, `[\d - a]`}, | |
{`[a-\d]`, `[a-\d]`}, | |
{`[\pL0-9]`, `[\pL 0-9]`}, | |
{`[+--]`, `[+--]`}, | |
{`[--+]`, `[--+]`}, | |
{`[---]`, `[---]`}, | |
{`[-]`, `[-]`}, | |
{`[\x20-\x7f]`, `[\x20-\x7f]`}, | |
{`[\x{20}-\x{7f}]`, `[\x{20}-\x{7f}]`}, | |
{`[\1-\3]`, `[\1-\3]`}, | |
{`[\10-\20]`, `[\10-\20]`}, | |
{`[❤-❤a]`, `[❤-❤ a]`}, | |
// Char class with meta symbols. | |
{`[|]`, `[|]`}, | |
{`[$.+*^?]`, `[$ . + * ^ ?]`}, | |
{`[^$.+*^?]`, `[^$ . + * ^ ?]`}, | |
// Posix char classes. | |
{`x[:alpha:]y`, `{x [: a l p h a :] y}`}, | |
{`x[a[:alpha:]]y`, `{x [a [:alpha:]] y}`}, | |
{`x[[:^alpha:]]y`, `{x [[:^alpha:]] y}`}, | |
{`x[^[:alpha:]]y`, `{x [^[:alpha:]] y}`}, | |
{`x[^[:^alpha:]]y`, `{x [^[:^alpha:]] y}`}, | |
// Valid repeat expressions. | |
{`.{3}`, `(repeat . {3})`}, | |
{`.{3,}`, `(repeat . {3,})`}, | |
{`.{3,6}`, `(repeat . {3,6})`}, | |
{`.{6}?`, `(non-greedy (repeat . {6}))`}, | |
{`[a-z]{5}`, `(repeat [a-z] {5})`}, | |
// Invalid repeat expressions are parsed as normal chars. | |
{`.{a}`, `{. {a}}`}, | |
{`.{-1}`, `{. {-1}}`}, | |
// \Q...\E escape. | |
{`\Qa.b\E+z`, `{(+ (q \Qa.b\E)) z}`}, | |
{`x\Q?\Ey`, `{x (q \Q?\E) y}`}, | |
{`x\Q\Ey`, `{x (q \Q\E) y}`}, | |
{`x\Q`, `{x (q \Q)}`}, | |
{`x\Qy`, `{x (q \Qy)}`}, | |
{`x\Qyz`, `{x (q \Qyz)}`}, | |
// Incomplete `x|` and `|x` expressions are valid. | |
{`(docker-|)`, `(capture (or docker- {}))`}, | |
{`x|`, `(or x {})`}, | |
{`|x`, `(or {} x)`}, | |
{`(|x|y)`, `(capture (or {} x y))`}, | |
{`(?:|x)`, `(group (or {} x))`}, | |
// More tests for char merging. | |
{`xy+`, `{x (+ y)}`}, | |
{`.xy`, `{. xy}`}, | |
{`foo?|bar`, `(or {fo (? o)} bar)`}, | |
// Tests from the patterns found in various GitHub projects. | |
{`Adm([^i]|$)`, `{Adm (capture (or [^i] $))}`}, | |
{`\.(com|com\.\w{2})$`, `{\. (capture (or com {com \. (repeat \w {2})})) $}`}, | |
{`(?i)a(?:x|y)b`, `{(flags ?i) a (group (or x y)) b}`}, | |
Go test cases: | |
regexp.MustCompile(`[\D0-9]`) | |
regexp.MustCompile(`[\D5]`) | |
regexp.MustCompile(`(^pt$|_content$|_file$|_disk$)`) | |
regexp.MustCompile(`(?:(?i)foo)(?i)bar`) | |
regexp.MustCompile(`(?m)(?i)(?-m)(?-i)(?m)(?i)`) | |
regexp.MustCompile(`(?ms:(?i:foo))(?im:bar)`) | |
regexp.MustCompile(`(?i)(?ms:flags1)(?m:flags2)`) | |
regexp.MustCompile(`((?m)(?i:a|b(?s:foo))(?i)x)`) | |
regexp.MustCompile(`(?i)yy(?-i)x`) | |
regexp.MustCompile(`(?i-i)`) | |
regexp.MustCompile(`(?i:foo)(?i)bar`) | |
regexp.MustCompile(`(?i:(?m:fo(?-i)o))(?mi)x(?-mi)bar`) | |
regexp.MustCompile(`(?i-i)(?i)`) | |
regexp.MustCompile(`(?:(?i)foo)(?i)x(?-i)`) | |
regexp.MustCompile(`^`) | |
regexp.MustCompile(`^foo`) | |
regexp.MustCompile(`^foo?|bar`) | |
regexp.MustCompile(`^foo|^bar`) | |
regexp.MustCompile(`(^a|^b)`) | |
regexp.MustCompile(`(?i)^foo`) | |
regexp.MustCompile(`(?i)((?m)a|^foo)b`) | |
regexp.MustCompile(`(?i)(?m)\bfoo|bar|^baz`) | |
regexp.MustCompile(`(?i)^(?m)foo|bar|baz`) | |
regexp.MustCompile(`(?i:foo|((?:f|^b|(foo|^bar))))`) | |
regexp.MustCompile(`(?i)^(?m)foo|bar|^baz`) | |
regexp.MustCompile(`(?i)(?:)(^| )\S+`) | |
regexp.MustCompile(`$`) | |
regexp.MustCompile(`foo$`) | |
regexp.MustCompile(`foo?$|bar`) | |
regexp.MustCompile(`foo$|bar$`) | |
regexp.MustCompile(`(a$|b$)`) | |
regexp.MustCompile(`(?i)foo$`) | |
regexp.MustCompile(`(?i)((?m)a|foo)b$`) | |
regexp.MustCompile(`(?i)(?m)\bfoo$|bar$|baz`) | |
regexp.MustCompile(`(?i)(?m)foo|bar$|baz`) | |
regexp.MustCompile(`(?i:foo|((?:f|^b|(foo|^bar)))$)`) | |
regexp.MustCompile(`(?i)^(?m)foo|bar|^baz$`) | |
regexp.MustCompile(`^.+@.+\..+$`) | |
regexp.MustCompile(`^(")`) | |
regexp.MustCompile(`^((\").*(\"))`) | |
regexp.MustCompile(`^(\+)`) | |
regexp.MustCompile(`~~`) | |
regexp.MustCompile(`;[^=;{}]+;`) | |
regexp.MustCompile(`'''(.*)'''`) | |
regexp.MustCompile(`'([ (\[{<])"`) | |
regexp.MustCompile(`( ")`) | |
regexp.MustCompile(`(\*[^ ][^*]*\*)`) | |
regexp.MustCompile(`[<>]+`) | |
regexp.MustCompile(`[!&]([^=!&?[)]+)|\[\[(.*?)\]\]`) | |
regexp.MustCompile(`[.?,!;:@#$%^&*()]+`) | |
regexp.MustCompile(`\*\*[^*]*\*\*`) | |
regexp.MustCompile(`\+[^+]*\+`) | |
regexp.MustCompile("^([^:]*):`(.*)$") | |
regexp.MustCompile("^$") | |
regexp.MustCompile("^\\[(.*?)\\]") | |
regexp.MustCompile("^\\{\\.?([^{}]+)\\}$|^\\.?([^{}]+)$") | |
regexp.MustCompile("<[^>]+>") | |
regexp.MustCompile("_") | |
regexp.MustCompile("/+") | |
regexp.MustCompile("/+$") | |
regexp.MustCompile(".*=.*,.*=.*") | |
regexp.MustCompile(".+@.+") | |
regexp.MustCompile("") | |
regexp.MustCompile("(.+)@(.+)#(.+)|(.+)@(.+)") | |
regexp.MustCompile("([^:@]*)(:([^@]*))?@(.+)") | |
regexp.MustCompile("([\\/\\[\\]\\(\\)\\\\^\\$\\.\\|\\?\\*\\+\\'])") | |
regexp.MustCompile("[ ]") | |
regexp.MustCompile("[,:]") | |
regexp.MustCompile("[:=]") | |
regexp.MustCompile("[!#]{(.+?)}") | |
regexp.MustCompile("[@:;,]+") | |
regexp.MustCompile("[\\\\][_~\\.\\-!$&'\\(\\)*+,;=/?#@%]") | |
regexp.MustCompile("\\{(.*?)\\}+") | |
regexp.MustCompile("#.*") | |
regexp.MustCompile("~[^01]") | |
regexp.MustCompile("^[01]{1,64}$") | |
regexp.MustCompile(`^(?:[-+]?(?:0|[1-9]\d*))$`) | |
regexp.MustCompile("\033.*?m") | |
regexp.MustCompile("([0-7]{6}) [^ ]+ [0-9a-f]{40}\t(.*)") | |
regexp.MustCompile("^[0-9]+") | |
regexp.MustCompile("[*][0-9]+$") | |
regexp.MustCompile("[\\.[0-9]+]*") | |
regexp.MustCompile("[+-]?[0-9]+") | |
regexp.MustCompile("[0-9]+") | |
regexp.MustCompile(".* ([0-9]+)\\.([0-9]+)") | |
regexp.MustCompile("[+-]?[0-9]*\\.[0-9]+") | |
regexp.MustCompile("[0-9]+(.[0-9]+)?") | |
regexp.MustCompile("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)$") | |
regexp.MustCompile("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:(?:[Tt]|[ \t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \t]*(?:Z|([-+][0-9][0-9]?)(?::([0-9][0-9])?)?))?)?$") | |
regexp.MustCompile("[0-9A-Fa-f]") | |
regexp.MustCompile("([0-9a-fA-F]{40}) ([0-9a-fA-F]{40}) refs\\/(heads|tags)\\/(.+?)(\x00|$)") | |
regexp.MustCompile("^#[0-9a-fA-F]{6}$") | |
regexp.MustCompile("^[0-9A-Fa-f]{64}") | |
regexp.MustCompile("^([.0-9]+)(?:_(?:RC|OSEr)[0-9]+)?") | |
regexp.MustCompile(`0\d{2}-[2-9]\d{2}-\d{4}`) | |
regexp.MustCompile(`0\d-[2-9]\d{3}-\d{4}`) | |
regexp.MustCompile(`0\d{3}-[2-9]\d-\d{4}`) | |
regexp.MustCompile(`0\d{4}-[2-9]-\d{4}`) | |
regexp.MustCompile("\\.0*e\\+0*") | |
regexp.MustCompile("0x0+([0-9])") | |
regexp.MustCompile("^0x[a-h0-9]+( 0x[a-h0-9]+)*$") | |
regexp.MustCompile(`^ *(#{1,6}) *([^\n]+?) *#* *(?:\n|$)`) | |
regexp.MustCompile("^[1-9][0-9]?") | |
regexp.MustCompile("^[1-9][0-9]*%?$") | |
regexp.MustCompile(":443$") | |
regexp.MustCompile(`^4\d{12}(\d{3})?$`) | |
regexp.MustCompile(`^((?: {4}|\t)[^\n]+\n*)+`) | |
regexp.MustCompile(`^(5[1-5]\d{4}|677189)\d{10}$`) | |
regexp.MustCompile(`^(6011|65\d{2}|64[4-9]\d)\d{12}|(62\d{14})$`) | |
regexp.MustCompile("a") | |
regexp.MustCompile(`[áàảãạấầẩẫậâăắằẳẵặ]`) | |
regexp.MustCompile(`a[act]ggtaaa|tttacc[agt]t`) | |
regexp.MustCompile(`a+b+`) | |
regexp.MustCompile(`abc{2,5}d?e*f+`) | |
regexp.MustCompile(`^absolute(\.|-).*`) | |
regexp.MustCompile(`\ACK2txt\n$`) | |
regexp.MustCompile(`Acl`) | |
regexp.MustCompile("address already in use") | |
regexp.MustCompile(`Adm([^i]|$)`) | |
regexp.MustCompile(`[aeiou][^aeiou]`) | |
regexp.MustCompile(`Aes`) | |
regexp.MustCompile("^[a-f,0-9]*$") | |
regexp.MustCompile("^[a-f0-9]{64}\\.json$") | |
regexp.MustCompile(`^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$`) | |
regexp.MustCompile(`[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}`) | |
regexp.MustCompile("[^a-fA-F0-9]") | |
regexp.MustCompile("#([a-fA-F0-9]{6})") | |
regexp.MustCompile(`agggtaaa|tttaccct`) | |
regexp.MustCompile(`<a href="#.+?\|`) | |
regexp.MustCompile("[^-[:alnum:]_.]+") | |
regexp.MustCompile("[^[:alnum:]\\-_\\./]") | |
regexp.MustCompile(`[^[:alpha:]]`) | |
regexp.MustCompile(`^[^ ]*apache2`) | |
regexp.MustCompile(`/api/internal/login`) | |
regexp.MustCompile(`/api/organizations\?limit=100`) | |
regexp.MustCompile("argument|flag|shorthand") | |
regexp.MustCompile(`<arrmsg1>([\w\W]+?)</arrmsg1>`) | |
regexp.MustCompile(`a[^rst]c`) | |
regexp.MustCompile(`[^a-z]+`) | |
regexp.MustCompile(`[a-z]+`) | |
regexp.MustCompile("// *@([a-z]*) *(.*)$") | |
regexp.MustCompile("[a-z]+") | |
regexp.MustCompile("^[-a-z0-9_/]+$") | |
regexp.MustCompile("[a-z]+[0-9]+$") | |
regexp.MustCompile("^[a-z0-9][a-z0-9\\-]{2,62}$") | |
regexp.MustCompile("[^a-zA-Z\\_\\ ]") | |
regexp.MustCompile("[a-zA-Z]") | |
regexp.MustCompile(`[^a-zA-Z0-9]`) | |
regexp.MustCompile("^[a-zA-Z0-9_-]+$") | |
regexp.MustCompile("^[a-zA-Z0-9_.-]+$") | |
regexp.MustCompile("^[a-zA-Z0-9_./:-]+$") | |
regexp.MustCompile("^[a-zA-Z0-9-_./]+$") | |
regexp.MustCompile("^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~.-]+$") | |
regexp.MustCompile("[^.a-zA-Z0-9_-]") | |
regexp.MustCompile("[^a-zA-Z0-9_.-]") | |
regexp.MustCompile("[^a-zA-Z0-9_]") | |
regexp.MustCompile("[^a-zA-Z0-9_\\-\\.]") | |
regexp.MustCompile("[^a-zA-Z0-9-]") | |
regexp.MustCompile("[^a-zA-Z0-9+=,.@_-]") | |
regexp.MustCompile("[a-zA-Z0-9_]") | |
regexp.MustCompile("[A-Z][a-z0-9]+") | |
regexp.MustCompile("^[a-zA-Z0-9~._-]{43,128}$") | |
regexp.MustCompile("^[a-zA-Z0-9._~-]{43,128}$") | |
regexp.MustCompile("^[A-Za-z0-9][A-Za-z0-9_\\-\\.]{0,23}$") | |
regexp.MustCompile(`>([a-zA-Z0-9]+@[a-zA-Z0-9.]+\.[a-zA-Z0-9]+)<`) | |
regexp.MustCompile(`[a-zA-Z0-9]+@[a-zA-Z-0-9.]+\.[a-zA-Z0-9]+`) | |
regexp.MustCompile(`[a-zA-Z0-9]+@[a-zA-Z0-9.]+\.[a-zA-Z0-9]+`) | |
regexp.MustCompile("^[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])$") | |
regexp.MustCompile(`^[A-Za-z0-9._%+\-]+@[A-Za-z0-9.\-]+\.[A-Za-z]{2,4}$`) | |
regexp.MustCompile("([a-zA-Z]+)(([0-9]+)(x([0-9]+))?)?") | |
regexp.MustCompile("^[a-zA-Z]+(\\.[a-zA-Z]+)*$") | |
regexp.MustCompile("{([a-zA-Z][a-zA-Z0-9_.]*).*}") | |
regexp.MustCompile("@[a-zA-Z]+(-[a-zA-Z0-9]+)*") | |
regexp.MustCompile("^[a-zA-Z_][a-zA-Z0-9_]{0,127}$") | |
regexp.MustCompile("^[a-zA-Z_]\\w*$") | |
regexp.MustCompile("[^A-Z`'\\s]") | |
regexp.MustCompile(`\b(720p|1080p|hdtv|x264|dts|bluray)\b.*`) | |
regexp.MustCompile(`\\b[A-Fa-f0-9]{32}\\b`) | |
regexp.MustCompile(`^\$bgm\s+(\[.*\])$`) | |
regexp.MustCompile("^--bind-ro=/host/foo:.*/app/foo(:rbind)?$") | |
regexp.MustCompile("^--bind(-ro)?=/host/foo:.*/app/foo:rbind$") | |
regexp.MustCompile(`\blimit \?(?:, ?\?| offset \?)?`) | |
regexp.MustCompile(`\b(Ma?c)([A-Za-z]+)`) | |
regexp.MustCompile(`\bMac[A-Za-z]{2,}[^aciozj]\b`) | |
regexp.MustCompile(`\bMc`) | |
regexp.MustCompile(`\bsample\b`) | |
regexp.MustCompile("BUG") | |
regexp.MustCompile("^/+bzz[i]?:/+[^/]+$") | |
regexp.MustCompile("^/+bzz[ir]?:/+") | |
regexp.MustCompile(`^(\*+)(?: +(CANCELED|DONE|TODO))?(?: +(\[#.\]))?(?: +(.*?))?(?:(:[a-zA-Z0-9_@#%:]+:))??[ \t]*$`) | |
regexp.MustCompile(`^C[A-Z0-9]*$`) | |
regexp.MustCompile(`[cgt]gggtaaa|tttaccc[acg]`) | |
regexp.MustCompile(` CHARACTER SET ([^ ]+)`) | |
regexp.MustCompile("charset=([^ ;]*)") | |
regexp.MustCompile(`CIFS Session: (?P<sessions>\d+)`) | |
regexp.MustCompile(".*cluster is healthy.*") | |
regexp.MustCompile(` COLLATE ([^ ]+)`) | |
regexp.MustCompile(`\.(com|com\.\w{2})$`) | |
regexp.MustCompile("(connection refused|connection reset by peer)$") | |
regexp.MustCompile("Could not find an allocated subnet for") | |
regexp.MustCompile("^cpu([0-9]*)") | |
regexp.MustCompile("Credential=([A-Z0-9]+)/") | |
regexp.MustCompile("(\\d+)") | |
regexp.MustCompile("[^\\d]+$") | |
regexp.MustCompile("\\d+") | |
regexp.MustCompile("^D[0-9]+:[0-9]+$") | |
regexp.MustCompile(`^\d{1,7}$`) | |
regexp.MustCompile(`^\d{3}[- ]?\d{2}[- ]?\d{4}$`) | |
regexp.MustCompile(`^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[+-]\d{2}:\d{2}$`) | |
regexp.MustCompile(`^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$`) | |
regexp.MustCompile(`^\d{8}T\d{6}Z$`) | |
regexp.MustCompile("^(\\d+-)([a-z]*)$") | |
regexp.MustCompile("\\d.\\d.\\d") | |
regexp.MustCompile("^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$") | |
regexp.MustCompile(`(\d+\.\d+) (\w+)(\(.*)`) | |
regexp.MustCompile(`(\d+\.\d+) (\w+)(\(.*) <(.+)>`) | |
regexp.MustCompile("Default Guest Additions ISO:(.+)") | |
regexp.MustCompile("default = (?P<foo>.+)\n") | |
regexp.MustCompile(".+/deployments/(\\d+)") | |
regexp.MustCompile(`^\d*H[A-Z0-9]*$`) | |
regexp.MustCompile("dial tcp: lookup (\\S+): no such host") | |
regexp.MustCompile("dial tcp (\\S+): connection refused") | |
regexp.MustCompile("dial tcp (\\S+): (?:connection timed out|i/o timeout|no route to host)") | |
regexp.MustCompile("Digest: ([\\S]+)") | |
regexp.MustCompile("[^[:digit:].]") | |
regexp.MustCompile(`<div class="price_m" id='original-price'>.+\n.+<\/span>(.+)<\/div>`) | |
regexp.MustCompile("^docker/[0-9A-Za-z+]") | |
regexp.MustCompile("^\\(Docker-Client/[0-9A-Za-z+]") | |
regexp.MustCompile(`Domain Name\.*: *(.+)`) | |
regexp.MustCompile(`^.+_dsa.*$`) | |
regexp.MustCompile("[^\\d-_\\.]") | |
regexp.MustCompile(`^.+_ecdsa$`) | |
regexp.MustCompile(`^.+_ed25519$`) | |
regexp.MustCompile(` edge/(\d+)\.(\d+)`) | |
regexp.MustCompile("[eE][+-]?[0-9]+") | |
regexp.MustCompile("\\.el[0-9_]*\\.") | |
regexp.MustCompile(`(Email|EmailAddress)\(\)`) | |
regexp.MustCompile("EnvironmentFile=-(.*openshift-sdn.*)") | |
regexp.MustCompile("error: (.*)") | |
regexp.MustCompile("^error inheriting socket fd") | |
regexp.MustCompile(`ESCAPE_([[:alnum:]]+)`) | |
regexp.MustCompile(`(es|ed|ing)$`) | |
regexp.MustCompile("^exit status (\\d+)") | |
regexp.MustCompile("^export .*$") | |
regexp.MustCompile(`^(::f{4}:)?10\.\d{1,3}\.\d{1,3}\.\d{1,3}`) | |
regexp.MustCompile("\\.fc[0-9_]*\\.") | |
regexp.MustCompile("(.*)ffjson:(\\s*)((skipdecoder)|(nodecoder))(.*)") | |
regexp.MustCompile("(.*)ffjson:(\\s*)((skipencoder)|(noencoder))(.*)") | |
regexp.MustCompile("(.*)ffjson:(\\s*)((skip)|(ignore))(.*)") | |
regexp.MustCompile(".*fluentd-elasticsearch.*") | |
regexp.MustCompile("Forwarding from 127.0.0.1:([0-9]+) -> 80") | |
regexp.MustCompile("^found invalid count value: LISTEN_FDS=a$") | |
regexp.MustCompile("found=([^\n]+)") | |
regexp.MustCompile("-gci-dev-([0-9]+)-") | |
regexp.MustCompile("git-media|hawser|git-lfs") | |
regexp.MustCompile("^go[0-9]+\\.([0-9]+)") | |
regexp.MustCompile("//go:generate[^\n]*\n") | |
regexp.MustCompile(`\.(gov|gov\.\w{2})$`) | |
regexp.MustCompile("^H[0-9]+:[0-9a-fA-F]{1,16}$") | |
regexp.MustCompile("hdd0.* image='(.*)' type=*") | |
regexp.MustCompile("^(HEAD|GET|PUT|POST|PATCH|OPTIONS|DELETE) ") | |
regexp.MustCompile("^/?(.*?)/(HEAD|git-upload-pack|git-receive-pack|info/refs|objects/.*)$") | |
regexp.MustCompile("^/hello$") | |
regexp.MustCompile("/hello") | |
regexp.MustCompile("he|ll|o+") | |
regexp.MustCompile("^/hello/(?P<name>[^/]+)$") | |
regexp.MustCompile("^/hello/(?P<name>[a-z]+)$") | |
regexp.MustCompile("(?:http://|https://|)([0-9]*)\\.dkr\\.ecr\\.(.*)\\.amazonaws\\.com.*") | |
regexp.MustCompile("(https?)://([^/]+)(/api/v3)?/repos/([^/]+)/([^/]+)/releases") | |
regexp.MustCompile("^https?://foo") | |
regexp.MustCompile("^https?://foo/nope") | |
regexp.MustCompile("http: TLS handshake error from ([\\d.]+):\\d+: remote error: bad certificate") | |
regexp.MustCompile("@(?i:article){.*") | |
regexp.MustCompile(`(?i)\bcode\b`) | |
regexp.MustCompile(`(?i)\+BEGIN_(CENTER|COMMENT|EXAMPLE|QUOTE|SRC|VERSE)`) | |
regexp.MustCompile("(?i)^(circle|disc|square|a|A|i|I|1)$") | |
regexp.MustCompile("(?i)^count(.+)$") | |
regexp.MustCompile(`(?i)^d('ye)$`) | |
regexp.MustCompile(`(?i)([ex](\d{2})(?:\d|$))`) | |
regexp.MustCompile(`(?i)<html.*/head>`) | |
regexp.MustCompile(`(?i:http).*.git`) | |
regexp.MustCompile("(?i) (=|<>|>|<|LIKE|IS|IN) ") | |
regexp.MustCompile(`(?i)\([^)]*mix[^)]*\)$`) | |
regexp.MustCompile("^import .*$") | |
regexp.MustCompile(`(?ims)<!--.*?-->`) | |
regexp.MustCompile(`(?ims)<!DOCTYPE.*?>`) | |
regexp.MustCompile(`(?ims)<script.*?>.*?</script>`) | |
regexp.MustCompile(`(?imsU)\[quote(?:=[^\]]+)?\](.+)\[/quote\]`) | |
regexp.MustCompile(`(?imU)^(.*)$`) | |
regexp.MustCompile("inet ([0-9.]*/[0-9]*) ") | |
regexp.MustCompile("^/([^\\/]+?)/info/refs$") | |
regexp.MustCompile(`\{inherits=(\d+)\}`) | |
regexp.MustCompile(`(?:(.+); )?InnoDB free: .*`) | |
regexp.MustCompile(`^(int)`) | |
regexp.MustCompile(`^((inteiro)|(real)|(caractere)|(lógico))(\s*):`) | |
regexp.MustCompile(`(?i)(refer):\s+(.*?)(\s|$)`) | |
regexp.MustCompile(`(?i)\([^)]*remaster[^)]*\)$`) | |
regexp.MustCompile("(?i)rtl|ltr") | |
regexp.MustCompile(`(?is)\(.*?\)`) | |
regexp.MustCompile(`(?is)<a.+?</a>`) | |
regexp.MustCompile(`(?i)(s?(\d{1,2}))[ex]`) | |
regexp.MustCompile(`^(?i)(\s*insert\s+into\s+)`) | |
regexp.MustCompile("(?i)(^|[,\\s])Upgrade($|[,\\s])") | |
regexp.MustCompile(`^(?i)\((\s*\w+(?:\s*,\s*\w+){1,100})\s*\)\s*`) | |
regexp.MustCompile(`(?i)windows nt`) | |
regexp.MustCompile(`(?i)windows phone`) | |
regexp.MustCompile(`k8s_.*\.metadata\.name$`) | |
regexp.MustCompile(`k8s_\w+_\w+_deployment\.spec\.selector\.match_labels$`) | |
regexp.MustCompile(`kitsu.io/users/(.*?)/library`) | |
regexp.MustCompile(".*kube-proxy.*") | |
regexp.MustCompile("^language-[a-zA-Z0-9]+$") | |
regexp.MustCompile(`^LI[A-Z0-9]*$`) | |
regexp.MustCompile(`<li class="neirong2">信息来源[^>]+">([^<]+)<`) | |
regexp.MustCompile(`<li class="neirong2">信息标题.*<b>([^<]+)<`) | |
regexp.MustCompile("listen tcp :443: bind: permission denied") | |
regexp.MustCompile("listen tcp :80: bind: permission denied") | |
regexp.MustCompile("master(-...)?$") | |
regexp.MustCompile("max-age= *([0-9]+)") | |
regexp.MustCompile(`(?m)^Created: *(.*?)$`) | |
regexp.MustCompile(`(?m:^%(\.\d)?[sdfgtq]$)`) | |
regexp.MustCompile("^MemFree:") | |
regexp.MustCompile("^MemTotal:") | |
regexp.MustCompile(`^metric .*`) | |
regexp.MustCompile(`(?m)^h([0-6])\.(.*)$`) | |
regexp.MustCompile("^missing port in address abc$") | |
regexp.MustCompile(`^(?:mister )(.*)$`) | |
regexp.MustCompile(`(?m)^@@@@\n`) | |
regexp.MustCompile("<!-- more -->") | |
regexp.MustCompile("(?ms)^(.+)\\=(.*)$") | |
regexp.MustCompile("(?ms)\\.{3}") | |
regexp.MustCompile(`(?m:^)(\s+)?(?i)(Whois server|whois):\s+(.*?)(\s|$)`) | |
regexp.MustCompile("(?ms)^(\\w+)\\=(.*)$") | |
regexp.MustCompile("(?m)^[ \t]+$") | |
regexp.MustCompile(`(?m:^[ \t]*%(\.\d)?[sdfgtq]$)`) | |
regexp.MustCompile(`(?m)^[ \t]*(#+)\s+`) | |
regexp.MustCompile("(?m)(^[ \t]*)(?:[^ \t\n])") | |
regexp.MustCompile(`^[^\n]+`) | |
regexp.MustCompile(`^\n+`) | |
regexp.MustCompile(`}\n+$`) | |
regexp.MustCompile("\n+") | |
regexp.MustCompile(`\n={2,}`) | |
regexp.MustCompile("net0.* mac=([0-9A-F]{12}) card=.*") | |
regexp.MustCompile("\nfoobar_process_cpu_seconds_total [0-9]") | |
regexp.MustCompile("\nfoobar_process_max_fds [1-9]") | |
regexp.MustCompile("\nfoobar_process_open_fds [1-9]") | |
regexp.MustCompile("\nfoobar_process_resident_memory_bytes [1-9]") | |
regexp.MustCompile("\nfoobar_process_start_time_seconds [0-9.]{10,}") | |
regexp.MustCompile("\nfoobar_process_virtual_memory_bytes [1-9]") | |
regexp.MustCompile("([niftvw])(?: % ([0-9]+))? (!=|=)(.*)") | |
regexp.MustCompile(".*node-problem-detector.*") | |
regexp.MustCompile("\nprocess_cpu_seconds_total [0-9]") | |
regexp.MustCompile("\nprocess_max_fds [1-9]") | |
regexp.MustCompile("\nprocess_open_fds [1-9]") | |
regexp.MustCompile("\nprocess_resident_memory_bytes [1-9]") | |
regexp.MustCompile("\nprocess_start_time_seconds [0-9.]{10,}") | |
regexp.MustCompile("\nprocess_virtual_memory_bytes [1-9]") | |
regexp.MustCompile(`(\n|\r|\r\n)$`) | |
regexp.MustCompile("\n|\u0085|\u2028|\u2029") | |
regexp.MustCompile("[oa]+") | |
regexp.MustCompile("<p(.*?)>") | |
regexp.MustCompile("%p1") | |
regexp.MustCompile("parent branch: (?P<foo>.+)\n") | |
regexp.MustCompile(`\p{Cyrillic}`) | |
regexp.MustCompile("(?P<dockerUA>.+) UpstreamClient(?P<upstreamUA>.+)") | |
regexp.MustCompile("peer_ifindex: (\\d+)") | |
regexp.MustCompile(`--(?P<var_name>[\\w-]+?):\\s+?(?P<var_val>.+?);`) | |
regexp.MustCompile("^remote\\.(.*)\\.url (.*?)$") | |
regexp.MustCompile(`<(.|[\r\n])*?>`) | |
regexp.MustCompile(" +\r\n") | |
regexp.MustCompile("rr") | |
regexp.MustCompile(`^.+_rsa$`) | |
regexp.MustCompile("^=== RUN:? +(.+)$") | |
regexp.MustCompile(".*RUNNING") | |
regexp.MustCompile("RUNNING") | |
regexp.MustCompile("Running in (.+)") | |
regexp.MustCompile(`[.]|,|\s/`) | |
regexp.MustCompile("^\\s+$") | |
regexp.MustCompile("\\s+") | |
regexp.MustCompile("('[^']*')|(\\S+)") | |
regexp.MustCompile("[\\s]{2,}") | |
regexp.MustCompile("(?s)-----BEGIN CERTIFICATE-----.*-----END CERTIFICATE-----") | |
regexp.MustCompile("(?s)-----BEGIN RSA PRIVATE KEY-----.*-----END RSA PRIVATE KEY-----") | |
regexp.MustCompile("script_[0-9]{4}.sh") | |
regexp.MustCompile("(?s)(-?[\\d.]+)\\)") | |
regexp.MustCompile("(?s)\\(([\\d.]+)") | |
regexp.MustCompile(`(-\s+(\d+)(?:\d|$))`) | |
regexp.MustCompile("[\\S]+: digest: ([\\S]+) size: [0-9]+") | |
regexp.MustCompile("^\\s*\\d+\\s*$") | |
regexp.MustCompile(`^\s*events\s*{`) | |
regexp.MustCompile("^(sha256:|)[a-z0-9]{64}\\n$") | |
regexp.MustCompile(`Share \(unique mount targets\): (?P<shares>\d+)`) | |
regexp.MustCompile(`^\s*http\s*{`) | |
regexp.MustCompile(`\s(if|else|while|catch)\s*([^{;]+;|;)`) | |
regexp.MustCompile("Signature=([[0-9a-f]+)") | |
regexp.MustCompile(`SMB Request/Response Buffer: (?P<smbBuffer>\d+) Pool size: (?P<smbPoolSize>\d+)`) | |
regexp.MustCompile(`<==\sPlayerInventory\.GetPlayerCardsV3\(\d*\)`) | |
regexp.MustCompile(`\s*:\s*`) | |
regexp.MustCompile("\\s*,\\s*") | |
regexp.MustCompile(`^(\S*) (\S*) (\d*) (\S*) IP(\d) (\S*)`) | |
regexp.MustCompile(`.*sses$`) | |
regexp.MustCompile(`^(\s+\S+:\s+.*)$`) | |
regexp.MustCompile("\\s+([^\\s]*)=\\s*(PID[^\\s]*)") | |
regexp.MustCompile("Starting \\w+ Master") | |
regexp.MustCompile("Starting \\w+ Node") | |
regexp.MustCompile("^(stop|terminate)$") | |
regexp.MustCompile("Successfully built ([0-9a-f]{12})") | |
regexp.MustCompile(`\s*Version:\s*(.+)$`) | |
regexp.MustCompile(`\s*\{weight=(\d+)\}\s*`) | |
regexp.MustCompile("^\\s*(\\w+)\\s+(\\w+)\\s+(.+)$") | |
regexp.MustCompile(`^[ \t]*#`) | |
regexp.MustCompile("[ \t]") | |
regexp.MustCompile("[\t ]+") | |
regexp.MustCompile("\t+") | |
regexp.MustCompile("(tarsum)(.([a-z0-9]+))?\\+([a-zA-Z0-9]+):([A-Fa-f0-9]+)") | |
regexp.MustCompile("tarsum(?:.[a-z0-9]+)?\\+[a-zA-Z0-9]+:[A-Fa-f0-9]+") | |
regexp.MustCompile(`<td><span class="label">性别:</span><span field="">([^<]+)</span></td>`) | |
regexp.MustCompile("^Test[0-9]*([A-Z].*$)") | |
regexp.MustCompile("^text/plain(;.*)?$") | |
regexp.MustCompile("/tmp/.+") | |
regexp.MustCompile("/tmp/script_[0-9]{4}.sh") | |
regexp.MustCompile("[ \t\n]+") | |
regexp.MustCompile("[\t\r\n]") | |
regexp.MustCompile("[\u000D\u000A]+") | |
regexp.MustCompile("Unable to decode an event from the watch stream: local error: unexpected message") | |
regexp.MustCompile(`unifi_devices_adopted{site="Default"} 1`) | |
regexp.MustCompile(`unifi_devices{site="Default"} 1`) | |
regexp.MustCompile(`unifi_devices_unadopted{site="Default"} 0`) | |
regexp.MustCompile("^unknown network foo$") | |
regexp.MustCompile("^unknown network invalid_unix_net_for_test$") | |
regexp.MustCompile(`^/video/([\w\-]{6,12})\.json$`) | |
regexp.MustCompile(`^(?:\"|\')\w+(?:\"|\')$`) | |
regexp.MustCompile(`^\w+\(.*\)$`) | |
regexp.MustCompile(`#\+(\w+): (.*)`) | |
regexp.MustCompile("^[\\w .?]*$") | |
regexp.MustCompile(".*\\/watch") | |
regexp.MustCompile(".*west.*") | |
regexp.MustCompile("\\w[\\w-.]+\\w") | |
regexp.MustCompile(`^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$`) | |
regexp.MustCompile("\x00([^:]*):([^\x00]*)\x00") | |
regexp.MustCompile("^X:[0-9a-fA-F]+$") | |
regexp.MustCompile("\x1B\\[(?:[0-9]{1,2}(?:;[0-9]{1,2})?)*[a-zA-Z]") | |
regexp.MustCompile("\x1b[\\[()][0-9;]*[a-zA-Z@]|\x1b.|[\x08\x0e\x0f]") | |
regexp.MustCompile("x509: certificate is valid for (\\S+, )+not (\\S+)") | |
regexp.MustCompile(`[\xC0-\xC6]`) | |
regexp.MustCompile(`[\xC8-\xCB]`) | |
regexp.MustCompile(`[\xE0-\xE6]`) | |
regexp.MustCompile(`[\xE8-\xEB]`) | |
regexp.MustCompile(`[а-яё]`) | |
regexp.MustCompile(`开 本:(\d+)开`) | |
PHP test cases: | |
preg_match('~[а-яё]~', $s); | |
preg_match('/\s*\{weight=(\d+)\}\s*/', $s); | |
preg_match('/\{inherits=(\d+)\}/', $s); | |
preg_match('/[<>]+/', $s); | |
preg_match('/[.?,!;:@#$%^&*()]+/', $s); | |
preg_match('/^\d{1,7}$/', $s); | |
preg_match('/^(")/', $s); | |
preg_match('/( ")/', $s); | |
preg_match('/unifi_devices{site="Default"} 1/', $s); | |
preg_match('/unifi_devices_adopted{site="Default"} 1/', $s); | |
preg_match('/unifi_devices_unadopted{site="Default"} 0/', $s); | |
preg_match('/^((\").*(\"))/', $s); | |
preg_match('~/api/internal/login~', $s); | |
preg_match('~/api/organizations\?limit=100~', $s); | |
preg_match('/[áàảãạấầẩẫậâăắằẳẵặ]/', $s); | |
preg_match('/\.(com|com\.\w{2})$/', $s); | |
preg_match('/\.(gov|gov\.\w{2})$/', $s); | |
preg_match('/[\xC0-\xC6]/', $s); | |
preg_match('/[\xE0-\xE6]/', $s); | |
preg_match('/[\xC8-\xCB]/', $s); | |
preg_match('/[\xE8-\xEB]/', $s); | |
preg_match('/\bsample\b/', $s); | |
preg_match('/\b(720p|1080p|hdtv|x264|dts|bluray)\b.*/', $s); | |
preg_match('/(?i)\bcode\b/', $s); | |
preg_match('/\p{Cyrillic}/', $s); | |
preg_match('/--(?P<var_name>[\\w-]+?):\\s+?(?P<var_val>.+?);/', $s); | |
preg_match('/^.+_rsa$/', $s); | |
preg_match('/^.+_dsa.*$/', $s); | |
preg_match('/^.+_ed25519$/', $s); | |
preg_match('/^.+_ecdsa$/', $s); | |
preg_match('/a[^rst]c/', $s); | |
preg_match('/<li class="neirong2">信息标题.*<b>([^<]+)</', $s); | |
preg_match('/<li class="neirong2">信息来源[^>]+">([^<]+)</', $s); | |
preg_match('/\s*:\s*/', $s); | |
preg_match('/(?m)^[ \t]*(#+)\s+/', $s); | |
preg_match('/(?m)^h([0-6])\.(.*)$/', $s); | |
preg_match('/<==\sPlayerInventory\.GetPlayerCardsV3\(\d*\)/', $s); | |
preg_match('/^ *(#{1,6}) *([^\n]+?) *#* *(?:\n|$)/', $s); | |
preg_match('/^[^\n]+/', $s); | |
preg_match('/^\n+/', $s); | |
preg_match('/^((?: {4}|\t)[^\n]+\n*)+/', $s); | |
preg_match('/^(int)/', $s); | |
preg_match('/^(\+)/', $s); | |
preg_match('/[^a-zA-Z0-9]/', $s); | |
preg_match('/^absolute(\.|-).*/', $s); | |
preg_match('/^metric .*/', $s); | |
preg_match('/\n={2,}/', $s); | |
preg_match('/~~/', $s); | |
preg_match('/[aeiou][^aeiou]/', $s); | |
preg_match('/.*sses$/', $s); | |
preg_match('/CIFS Session: (?P<sessions>\d+)/', $s); | |
preg_match('/Share \(unique mount targets\): (?P<shares>\d+)/', $s); | |
preg_match('~SMB Request/Response Buffer: (?P<smbBuffer>\d+) Pool size: (?P<smbPoolSize>\d+)~', $s); | |
preg_match('~(?is)<a.+?</a>~', $s); | |
preg_match('/(?is)\(.*?\)/', $s); | |
preg_match('/<a href="#.+?\|/', $s); | |
preg_match('/^(?:mister )(.*)$/', $s); | |
preg_match('/(?ims)<!DOCTYPE.*?>/', $s); | |
preg_match('/(?ims)<!--.*?-->/', $s); | |
preg_match('~(?ims)<script.*?>.*?</script>~', $s); | |
preg_match('/[a-z]+/', $s); | |
preg_match('/[^a-z]+/', $s); | |
preg_match('/Acl/', $s); | |
preg_match('/Adm([^i]|$)/', $s); | |
preg_match('/Aes/', $s); | |
preg_match('/(es|ed|ing)$/', $s); | |
preg_match('/[^[:alpha:]]/', $s); | |
preg_match('/ESCAPE_([[:alnum:]]+)/', $s); | |
preg_match('~[.]|,|\s/~', $s); | |
preg_match('~(?imsU)\[quote(?:=[^\]]+)?\](.+)\[/quote\]~', $s); | |
preg_match('/(?imU)^(.*)$/', $s); | |
preg_match('/开 本:(\d+)开/', $s); | |
preg_match('/^((inteiro)|(real)|(caractere)|(lógico))(\s*):/', $s); | |
preg_match('/^\d*H[A-Z0-9]*$/', $s); | |
preg_match('/^LI[A-Z0-9]*$/', $s); | |
preg_match('/^C[A-Z0-9]*$/', $s); | |
preg_match('/[a-zA-Z0-9]+@[a-zA-Z0-9.]+\.[a-zA-Z0-9]+/', $s); | |
preg_match('/}\n+$/', $s); | |
preg_match('/^\s*events\s*{/', $s); | |
preg_match('/^\s*http\s*{/', $s); | |
preg_match('/(?i)windows nt/', $s); | |
preg_match('/(?i)windows phone/', $s); | |
preg_match('~^.* ENGINE=.*/\)~', $s); | |
preg_match('/[a-zA-Z0-9]+@[a-zA-Z-0-9.]+\.[a-zA-Z0-9]+/', $s); | |
preg_match('/he|ll|o+/', $s); | |
preg_match('/^(\S*) (\S*) (\d*) (\S*) IP(\d) (\S*)/', $s); | |
preg_match('/\s*Version:\s*(.+)$/', $s); | |
preg_match('/Domain Name\.*: *(.+)/', $s); | |
preg_match('/(Email|EmailAddress)\(\)/', $s); | |
preg_match('/\*\*[^*]*\*\*/', $s); | |
preg_match('/(\*[^ ][^*]*\*)/', $s); | |
preg_match('/\+[^+]*\+/', $s); | |
preg_match('/\bMac[A-Za-z]{2,}[^aciozj]\b/', $s); | |
preg_match('/\bMc/', $s); | |
preg_match('/\b(Ma?c)([A-Za-z]+)/', $s); | |
preg_match('/(?m)^Created: *(.*?)$/', $s); | |
preg_match('/#\+(\w+): (.*)/', $s); | |
preg_match('/^(\*+)(?: +(CANCELED|DONE|TODO))?(?: +(\[#.\]))?(?: +(.*?))?(?:(:[a-zA-Z0-9_@#%:]+:))??[ \t]*$/', $s); | |
preg_match('/^[ \t]*#/', $s); | |
preg_match('/(?i)\+BEGIN_(CENTER|COMMENT|EXAMPLE|QUOTE|SRC|VERSE)/', $s); | |
preg_match('/(\d+\.\d+) (\w+)(\(.*) <(.+)>/', $s); | |
preg_match('/(\d+\.\d+) (\w+)(\(.*)/', $s); | |
preg_match('/^(\s+\S+:\s+.*)$/', $s); | |
preg_match('/abc{2,5}d?e*f+/', $s); | |
preg_match('/a+b+/', $s); | |
preg_match('/(?m:^%(\.\d)?[sdfgtq]$)/', $s); | |
preg_match('/(?m:^[ \t]*%(\.\d)?[sdfgtq]$)/', $s); | |
preg_match('~(?i)<html.*/head>~', $s); | |
preg_match('/ COLLATE ([^ ]+)/', $s); | |
preg_match('/ CHARACTER SET ([^ ]+)/', $s); | |
preg_match('/(?:(.+); )?InnoDB free: .*/', $s); | |
preg_match('~<td><span class="label">性别:</span><span field="">([^<]+)</span></td>~', $s); | |
preg_match('/\ACK2txt\n$/', $s); | |
preg_match('/^\d{3}[- ]?\d{2}[- ]?\d{4}$/', $s); | |
preg_match('~<arrmsg1>([\w\W]+?)</arrmsg1>~', $s); | |
preg_match('/<p(.*?)>/', $s); | |
preg_match('/^(?i)(\s*insert\s+into\s+)/', $s); | |
preg_match('/^(?i)\((\s*\w+(?:\s*,\s*\w+){1,100})\s*\)\s*/', $s); | |
preg_match('/0\d-[2-9]\d{3}-\d{4}/', $s); | |
preg_match('/0\d{2}-[2-9]\d{2}-\d{4}/', $s); | |
preg_match('/0\d{3}-[2-9]\d-\d{4}/', $s); | |
preg_match('/0\d{4}-[2-9]-\d{4}/', $s); | |
preg_match('/(?i)(refer):\s+(.*?)(\s|$)/', $s); | |
preg_match('/(?m:^)(\s+)?(?i)(Whois server|whois):\s+(.*?)(\s|$)/', $s); | |
preg_match('/@(?i:article){.*/', $s); | |
preg_match('/\blimit \?(?:, ?\?| offset \?)?/', $s); | |
preg_match('/^[A-Za-z0-9._%+\-]+@[A-Za-z0-9.\-]+\.[A-Za-z]{2,4}$/', $s); | |
preg_match('/^4\d{12}(\d{3})?$/', $s); | |
preg_match('/^(5[1-5]\d{4}|677189)\d{10}$/', $s); | |
preg_match('/^(6011|65\d{2}|64[4-9]\d)\d{12}|(62\d{14})$/', $s); | |
preg_match('/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z$/', $s); | |
preg_match('/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[+-]\d{2}:\d{2}$/', $s); | |
preg_match('/^\d{8}T\d{6}Z$/', $s); | |
preg_match('/^\w+\(.*\)$/', $s); | |
preg_match('/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/', $s); | |
preg_match('/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/', $s); | |
preg_match('~^/video/([\w\-]{6,12})\.json$~', $s); | |
preg_match('/(\n|\r|\r\n)$/', $s); | |
preg_match('/(?m)^@@@@\n/', $s); | |
preg_match('/agggtaaa|tttaccct/', $s); | |
preg_match('/[cgt]gggtaaa|tttaccc[acg]/', $s); | |
preg_match('/a[act]ggtaaa|tttacc[agt]t/', $s); | |
preg_match('/(?i:http).*.git/', $s); | |
preg_match('~kitsu.io/users/(.*?)/library~', $s); | |
preg_match('/k8s_.*\.metadata\.name$/', $s); | |
preg_match('/k8s_\w+_\w+_deployment\.spec\.selector\.match_labels$/', $s); | |
preg_match('/[!&]([^=!&?[)]+)|\[\[(.*?)\]\]/', $s); | |
preg_match('/\\b[A-Fa-f0-9]{32}\\b/', $s); | |
preg_match('/(?i)(s?(\d{1,2}))[ex]/', $s); | |
preg_match('/(?i)([ex](\d{2})(?:\d|$))/', $s); | |
preg_match('/(-\s+(\d+)(?:\d|$))/', $s); | |
preg_match('~ edge/(\d+)\.(\d+)~', $s); | |
preg_match('/^.+@.+\..+$/', $s); | |
preg_match('/^\$bgm\s+(\[.*\])$/', $s); | |
preg_match('/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/', $s); | |
preg_match('/;[^=;{}]+;/', $s); | |
preg_match('/\s(if|else|while|catch)\s*([^{;]+;|;)/', $s); | |
preg_match('/^[^ ]*apache2/', $s); | |
preg_match('/^(?:[-+]?(?:0|[1-9]\d*))$/', $s); | |
preg_match('/<(.|[\r\n])*?>/', $s); | |
preg_match('/^(::f{4}:)?10\.\d{1,3}\.\d{1,3}\.\d{1,3}/', $s); | |
preg_match('/(?i)\([^)]*remaster[^)]*\)$/', $s); | |
preg_match('/>([a-zA-Z0-9]+@[a-zA-Z0-9.]+\.[a-zA-Z0-9]+)</', $s); | |
preg_match('/(?i)\([^)]*mix[^)]*\)$/', $s); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment