diff --git a/glob_test.go b/glob_test.go index 56f768d..6325a60 100644 --- a/glob_test.go +++ b/glob_test.go @@ -12,40 +12,40 @@ import ( const ( pattern_all = "[a-z][!a-x]*cat*[h][!b]*eyes*" - regexp_all = `[a-z][^a-x].*cat.*[h][^b].*eyes.*` + regexp_all = `^[a-z][^a-x].*cat.*[h][^b].*eyes.*$` fixture_all = "my cat has very bright eyes" pattern_plain = "google.com" - regexp_plain = `google\.com` + regexp_plain = `^google\.com$` fixture_plain = "google.com" pattern_multiple = "https://*.google.*" - regexp_multiple = `https:\/\/.*\.google\..*` + regexp_multiple = `^https:\/\/.*\.google\..*$` fixture_multiple = "https://account.google.com" pattern_alternatives = "{https://*.google.*,*yandex.*,*yahoo.*,*mail.ru}" - regexp_alternatives = `(https:\/\/.*\.google\..*|.*yandex\..*|.*yahoo\..*|.*mail\.ru)` + regexp_alternatives = `^(https:\/\/.*\.google\..*|.*yandex\..*|.*yahoo\..*|.*mail\.ru)$` fixture_alternatives = "http://yahoo.com" pattern_alternatives_suffix = "{https://*gobwas.com,http://exclude.gobwas.com}" - regexp_alternatives_suffix = `(https:\/\/.*gobwas\.com|http://exclude.gobwas.com)` + regexp_alternatives_suffix = `^(https:\/\/.*gobwas\.com|http://exclude.gobwas.com)$` fixture_alternatives_suffix_first = "https://safe.gobwas.com" fixture_alternatives_suffix_second = "http://exclude.gobwas.com" pattern_prefix = "abc*" - regexp_prefix = `abc.*` + regexp_prefix = `^abc.*$` pattern_suffix = "*def" - regexp_suffix = `.*def` + regexp_suffix = `^.*def$` pattern_prefix_suffix = "ab*ef" - regexp_prefix_suffix = `ab.*ef` + regexp_prefix_suffix = `^ab.*ef$` fixture_prefix_suffix = "abcdef" pattern_alternatives_combine_lite = "{abc*def,abc?def,abc[zte]def}" - regexp_alternatives_combine_lite = `(abc.*def|abc.def|abc[zte]def)` + regexp_alternatives_combine_lite = `^(abc.*def|abc.def|abc[zte]def)$` fixture_alternatives_combine_lite = "abczdef" pattern_alternatives_combine_hard = "{abc*[a-c]def,abc?[d-g]def,abc[zte]?def}" - regexp_alternatives_combine_hard = `(abc.*[a-c]def|abc.[d-g]def|abc[zte].def)` + regexp_alternatives_combine_hard = `^(abc.*[a-c]def|abc.[d-g]def|abc[zte].def)$` fixture_alternatives_combine_hard = "abczqdef" ) diff --git a/readme.md b/readme.md index 49537b8..0d7fe60 100644 --- a/readme.md +++ b/readme.md @@ -112,13 +112,13 @@ The same things with `regexp` package: Pattern | Fixture | Operations | Speed (ns/op) --------|---------|------------|-------------- -`[a-z][^a-x].*cat.*[h][^b].*eyes.*` | `my cat has very bright eyes` | 500000 | 2762 -`https:\/\/.*\.google\..*` | `https://account.google.com` | 1000000 | 1191 -`(https:\/\/.*\.google\..*|.*yandex\..*|.*yahoo\..*|.*mail\.ru)` | `http://yahoo.com` | 1000000 | 1444 -`(https:\/\/.*gobwas\.com|http://exclude.gobwas.com)` | `https://safe.gobwas.com` | 1000000 | 1037 -`abc.*` | `abcdef` | 3000000 | 414 -`.*def` | `abcdef` | 5000000 | 276 -`ab.*ef` | `abcdef` | 5000000 | 352 +`^[a-z][^a-x].*cat.*[h][^b].*eyes.*$` | `my cat has very bright eyes` | 500000 | 2553 +`^https:\/\/.*\.google\..*$` | `https://account.google.com` | 1000000 | 1205 +`^(https:\/\/.*\.google\..*|.*yandex\..*|.*yahoo\..*|.*mail\.ru)$` | `http://yahoo.com` | 1000000 | 1435 +`^(https:\/\/.*gobwas\.com|http://exclude.gobwas.com)$` | `https://safe.gobwas.com` | 1000000 | 1039 +`^abc.*$` | `abcdef` | 3000000 | 275 +`^.*def$` | `abcdef` | 5000000 | 464 +`^ab.*ef$` | `abcdef` | 5000000 | 395 [godoc-image]: https://godoc.org/github.com/gobwas/glob?status.svg [godoc-url]: https://godoc.org/github.com/gobwas/glob