20 lines
635 B
Dart
20 lines
635 B
Dart
class Validation{
|
|
|
|
final List<String? Function(String)> conditions;
|
|
|
|
String? validate(String input){
|
|
for(var condition in conditions){
|
|
if(condition(input) != null){
|
|
return condition(input);
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
Validation({required this.conditions});
|
|
|
|
static bool phoneValidator(String input) => RegExp(r'86[1-5]\d{6}$').hasMatch('${input.trim()}');
|
|
|
|
static bool emailValidator(String input) => RegExp( r'^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$').hasMatch('${input.trim()}');
|
|
|
|
} |