반응형
Flutter & Dart에서 사용하는 정규 표현식이다
한글 ::: r"^[ㄱ-ㅎ가-힣]*$"
영문 ::: r"^[a-zA-Z]*$"
숫자 ::: r"^[0-9]*$"
공백 ::: r"\s+"
특수문자 ::: r'''^!#%&@`:;-.<>,~\\(\\)\\{\\}\\^\\[\\][*][+][$][|][']["]''
이메일 ::: r"^[a-zA-Z0-9.a-zA-Z0-9.!#$%&'*+-/=?^_`{|}~]+@[a-zA-Z0-9]+\.[a-zA-Z]+"
와 같은 정규식을 사용하였다
- 한영숫자공백 허용
final validText = RegExp(r"^[ㄱ-ㅎ가-힣0-9a-zA-Z\s+]*$");
처럼 원하는 정규식 조합을 사용하면 된다.
class NickNameCheck {
bool is8Characters;
bool isCheck;
NickNameCheck({
this.is8Characters = false,
this.isCheck = false,
});
bool get isCorrectWord => (is8Characters && isCheck);
}
NickNameCheck checkPossibleNickNameText(String value) {
var nickNameCheck = NickNameCheck();
final validText = RegExp(r"^[ㄱ-ㅎ가-힣0-9a-zA-Z]*$"); //한영숫자
//문자가 비었는지 확인
if (value.isEmpty) {
// 문자가 비었다면 모드 false로 리턴
return NickNameCheck();
}
//2자 이상인지 확인
if (value.length >= 2) {
nickNameCheck.is2Characters = true;
} else {
nickNameCheck.is2Characters = false;
}
//조건에 부합하지 않는 문자가 있는지 확인
if (!validText.hasMatch(value)) {
nickNameCheck.isCheck = false;
} else {
nickNameCheck.isCheck = true;
}
return nickNameCheck;
}
와 같이 사용한다.
반응형
'Flutter & Dart' 카테고리의 다른 글
Flutter & Dart 플러터에서 API 호출하기: http vs dio 비교 가이드 (0) | 2023.08.18 |
---|---|
Flutter & Dart 플러터 바텀 네비게이션 구현하기: 자세한 가이드 (0) | 2023.08.18 |
Flutter & Dart 플러터에서 인앱 결제 구현하기: in_app_purchase 패키지 활용 가이드 (0) | 2023.08.18 |
Flutter & Dart 카카오 지오코딩 사용 (0) | 2023.02.14 |
Flutter & Dart Rest API 사용 (0) | 2023.02.10 |