X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=validators.go;h=df6daf5c5a1f74750050fbd947ba495baef616b2;hb=HEAD;hp=bef5f6551fb36c07987424ab8006169af4d58d01;hpb=85fb8028aeb1f59c15b917d731e13e4c6e17fefd;p=path-extractor.git diff --git a/validators.go b/validators.go index bef5f65..df6daf5 100644 --- a/validators.go +++ b/validators.go @@ -51,13 +51,43 @@ func replaceGitPath(input string) string { return string(temp[1]) } +func isIp(input string) bool { + r := regexp.MustCompile("^[0-9]{1,3}\\.[0-9x]{1,3}\\.[0-9x]{1,3}\\.[0-9x]{1,3}$") + return r.Match([]byte(input)) +} + func isVersion(input string) bool { - r := regexp.MustCompile("[0-9x]\\.[0-9x]{1,2}(\\.[0-9x]{1,3})?") + r := regexp.MustCompile("^v?[0-9x]{1,3}\\.[0-9x]{1,3}(\\.[0-9x]{1,3})?$") return r.Match([]byte(input)) } +func isSpace(input string) bool { + r := regexp.MustCompile("^[0-9]*\\.[0-9]+[MGK]$") + return r.Match([]byte(input)) +} + +func startsWithInvalidString(input string) bool { + invalidBeginnings := []string{"Error/", "Object.", "Array."} + for _, s := range invalidBeginnings { + if strings.Index(input, s) == 0 { + return true + } + } + return false +} + +func endsWithInvalidString(input string) bool { + invalidEndings := []string{"."} + for _, s := range invalidEndings { + if strings.LastIndex(input, s) == len(input)-len(s) { + return true + } + } + return false +} + func containsInvalidString(input string) bool { - invalidStrings := []string{"(", ")", "and/or", "origin/", "{", "}", "<", ">", "$", "*"} + invalidStrings := []string{"//", "()", "and/or", "remotes/", "origin/", "{", "}", "<", ">", "$", "*", "this."} for _, s := range invalidStrings { if strings.Contains(input, s) { return true