RegularExpression constructor
RegularExpression({
- required Condition condition,
Implementation
factory RegularExpression({required Condition condition}) {
switch (condition) {
case Condition.isLength8:
// 8자 이상인지
return RegularExpression._(RegExp(r'^.{8,}$'));
case Condition.specialCharacter:
// 특수 문자 포함 여부
return RegularExpression._(RegExp(r'[!@#$%^&*(),.?":{}|<>]'));
case Condition.isEmail:
// 이메일 형식 확인
return RegularExpression._(
RegExp(
r"^[a-zA-Z0-9.a-zA-Z0-9!#$%&'*+-/=?^_`{|}~]+@[a-zA-Z0-9]+\.[a-zA-Z]+",
),
);
case Condition.onlyKor:
// 한국어만
return RegularExpression._(RegExp(r'^[가-힣]+$'));
case Condition.onlyEng:
// 영어만
return RegularExpression._(RegExp(r'^[a-zA-Z]+$'));
case Condition.onlyLetter:
// 영아, 한국어만
return RegularExpression._(RegExp(r'^[a-zA-Z가-힣\s]+$'));
case Condition.isContainUpperCase:
// 대문자 확인
return RegularExpression._(RegExp(r'[A-Z]'));
case Condition.onlyNumber:
// 숫자만
return RegularExpression._(RegExp(r'^[0-9]+$'));
case Condition.isContainSpace:
// 공백 포함 여부
return RegularExpression._(RegExp(r'\s'));
}
}