OSDN Git Service

new repo
[bytom/vapor.git] / vendor / gopkg.in / go-playground / validator.v9 / regexes.go
1 package validator
2
3 import "regexp"
4
5 const (
6         alphaRegexString               = "^[a-zA-Z]+$"
7         alphaNumericRegexString        = "^[a-zA-Z0-9]+$"
8         alphaUnicodeRegexString        = "^[\\p{L}]+$"
9         alphaUnicodeNumericRegexString = "^[\\p{L}\\p{N}]+$"
10         numericRegexString             = "^[-+]?[0-9]+(?:\\.[0-9]+)?$"
11         numberRegexString              = "^[0-9]+$"
12         hexadecimalRegexString         = "^[0-9a-fA-F]+$"
13         hexcolorRegexString            = "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$"
14         rgbRegexString                 = "^rgb\\(\\s*(?:(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])|(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])%\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])%\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])%)\\s*\\)$"
15         rgbaRegexString                = "^rgba\\(\\s*(?:(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])|(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])%\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])%\\s*,\\s*(?:0|[1-9]\\d?|1\\d\\d?|2[0-4]\\d|25[0-5])%)\\s*,\\s*(?:(?:0.[1-9]*)|[01])\\s*\\)$"
16         hslRegexString                 = "^hsl\\(\\s*(?:0|[1-9]\\d?|[12]\\d\\d|3[0-5]\\d|360)\\s*,\\s*(?:(?:0|[1-9]\\d?|100)%)\\s*,\\s*(?:(?:0|[1-9]\\d?|100)%)\\s*\\)$"
17         hslaRegexString                = "^hsla\\(\\s*(?:0|[1-9]\\d?|[12]\\d\\d|3[0-5]\\d|360)\\s*,\\s*(?:(?:0|[1-9]\\d?|100)%)\\s*,\\s*(?:(?:0|[1-9]\\d?|100)%)\\s*,\\s*(?:(?:0.[1-9]*)|[01])\\s*\\)$"
18         emailRegexString               = "^(?:(?:(?:(?:[a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+(?:\\.([a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+)*)|(?:(?:\\x22)(?:(?:(?:(?:\\x20|\\x09)*(?:\\x0d\\x0a))?(?:\\x20|\\x09)+)?(?:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:\\(?:[\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}]))))*(?:(?:(?:\\x20|\\x09)*(?:\\x0d\\x0a))?(\\x20|\\x09)+)?(?:\\x22)))@(?:(?:(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])(?:[a-zA-Z]|\\d|-|\\.|_|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))\\.)+(?:(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])(?:[a-zA-Z]|\\d|-|\\.|_|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))\\.?$"
19         base64RegexString              = "^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=|[A-Za-z0-9+\\/]{4})$"
20         iSBN10RegexString              = "^(?:[0-9]{9}X|[0-9]{10})$"
21         iSBN13RegexString              = "^(?:(?:97(?:8|9))[0-9]{10})$"
22         uUID3RegexString               = "^[0-9a-f]{8}-[0-9a-f]{4}-3[0-9a-f]{3}-[0-9a-f]{4}-[0-9a-f]{12}$"
23         uUID4RegexString               = "^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
24         uUID5RegexString               = "^[0-9a-f]{8}-[0-9a-f]{4}-5[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
25         uUIDRegexString                = "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
26         aSCIIRegexString               = "^[\x00-\x7F]*$"
27         printableASCIIRegexString      = "^[\x20-\x7E]*$"
28         multibyteRegexString           = "[^\x00-\x7F]"
29         dataURIRegexString             = "^data:.+\\/(.+);base64$"
30         latitudeRegexString            = "^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?)$"
31         longitudeRegexString           = "^[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$"
32         sSNRegexString                 = `^\d{3}[- ]?\d{2}[- ]?\d{4}$`
33         hostnameRegexString            = `^[a-zA-Z][a-zA-Z0-9\-\.]+[a-z-Az0-9]$`
34 )
35
36 var (
37         alphaRegex               = regexp.MustCompile(alphaRegexString)
38         alphaNumericRegex        = regexp.MustCompile(alphaNumericRegexString)
39         alphaUnicodeRegex        = regexp.MustCompile(alphaUnicodeRegexString)
40         alphaUnicodeNumericRegex = regexp.MustCompile(alphaUnicodeNumericRegexString)
41         numericRegex             = regexp.MustCompile(numericRegexString)
42         numberRegex              = regexp.MustCompile(numberRegexString)
43         hexadecimalRegex         = regexp.MustCompile(hexadecimalRegexString)
44         hexcolorRegex            = regexp.MustCompile(hexcolorRegexString)
45         rgbRegex                 = regexp.MustCompile(rgbRegexString)
46         rgbaRegex                = regexp.MustCompile(rgbaRegexString)
47         hslRegex                 = regexp.MustCompile(hslRegexString)
48         hslaRegex                = regexp.MustCompile(hslaRegexString)
49         emailRegex               = regexp.MustCompile(emailRegexString)
50         base64Regex              = regexp.MustCompile(base64RegexString)
51         iSBN10Regex              = regexp.MustCompile(iSBN10RegexString)
52         iSBN13Regex              = regexp.MustCompile(iSBN13RegexString)
53         uUID3Regex               = regexp.MustCompile(uUID3RegexString)
54         uUID4Regex               = regexp.MustCompile(uUID4RegexString)
55         uUID5Regex               = regexp.MustCompile(uUID5RegexString)
56         uUIDRegex                = regexp.MustCompile(uUIDRegexString)
57         aSCIIRegex               = regexp.MustCompile(aSCIIRegexString)
58         printableASCIIRegex      = regexp.MustCompile(printableASCIIRegexString)
59         multibyteRegex           = regexp.MustCompile(multibyteRegexString)
60         dataURIRegex             = regexp.MustCompile(dataURIRegexString)
61         latitudeRegex            = regexp.MustCompile(latitudeRegexString)
62         longitudeRegex           = regexp.MustCompile(longitudeRegexString)
63         sSNRegex                 = regexp.MustCompile(sSNRegexString)
64         hostnameRegex            = regexp.MustCompile(hostnameRegexString)
65 )