chars.go 369 B

12345678910111213141516171819
  1. package validate
  2. import (
  3. "fmt"
  4. "strings"
  5. )
  6. // Chars validates whether a string contains only allowed characters.
  7. func Chars(allow string) func(string) error {
  8. return func(value string) error {
  9. rs := []rune(value)
  10. for _, r := range rs {
  11. if !strings.ContainsRune(allow, r) {
  12. return fmt.Errorf("Contains disallowed characters")
  13. }
  14. }
  15. return nil
  16. }
  17. }