diff options
Diffstat (limited to 'utils')
| -rw-r--r-- | utils/validate/names.go | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/utils/validate/names.go b/utils/validate/names.go new file mode 100644 index 0000000..0d0fd25 --- /dev/null +++ b/utils/validate/names.go @@ -0,0 +1,14 @@ +package validate + +import "regexp" + +var dnsLabelPattern = regexp.MustCompile(`^[a-z0-9]([a-z0-9-]*[a-z0-9])?$`) +var emailLocalPartPattern = regexp.MustCompile(`^[a-z0-9]([a-z0-9._-]*[a-z0-9])?$`) + +func DNSLabel(name string) bool { + return len(name) >= 1 && len(name) <= 63 && dnsLabelPattern.MatchString(name) +} + +func EmailLocalPart(localPart string) bool { + return len(localPart) >= 1 && len(localPart) <= 64 && emailLocalPartPattern.MatchString(localPart) +} |
