cep method
Ensures that the string is a valid Brazilian postal code (CEP).
This method adds a CEPValidator to verify whether the given string follows the correct
Brazilian postal code (CEP) format, which can be:
- Formatted:
XXXXX-XXX(e.g.,01001-000) - Unformatted:
XXXXXXXX(e.g.,01001000)
Validation Rules:
- Must contain exactly 8 numeric digits.
- Supports both formatted (
XXXXX-XXX) and unformatted (XXXXXXXX) input. - Cannot contain only repeated digits (e.g.,
00000-000is invalid).
Example
final validator = v.string().cep();
print(validator.validate("01001-000")); // true (valid, formatted)
print(validator.validate("01001000")); // true (valid, unformatted)
print(validator.validate("00000-000")); // false (invalid, repeated digits)
print(validator.validate("abcdefgh")); // false (invalid, contains letters)
print(validator.validate("1234")); // false (invalid, too short)
print(validator.validate(null)); // false (invalid, required by default)
Validation Mode
You can specify whether the CEP should be validated in formatted or unformatted mode.
final formattedValidator = v.string().cep(mode: ValidationMode.formatted);
print(formattedValidator.validate("01001-000")); // true (valid)
print(formattedValidator.validate("01001000")); // false (invalid, missing formatting)
final unformattedValidator = v.string().cep(mode: ValidationMode.unformatted);
print(unformattedValidator.validate("01001000")); // true (valid)
print(unformattedValidator.validate("01001-000")); // true (still valid)
Parameters
message: (optional) A custom validation message.mode: (optional) Specifies whether the validation should require formatting.
Returns
The current VString instance with the cep validation applied.
Implementation
VString cep({
String? message,
ValidationMode mode = ValidationMode.unformatted,
}) {
return add(CEPValidator(message: message ?? _message.cep, mode: mode));
}