Notice
Recent Posts
Recent Comments
Link
- Today
- Total
CODE CAVE
[안드로이드 / 자바] 공백 체크 관련 메서드 본문
안드로이드 앱을 개발하다 보면 꼭 하게 되있는 문자열 체크..
공백과 관련된 문자열 체크 함수들을 몇개 작성 해봤습니다.
생각보다 많은 내용은 없구요, 그냥 글자 길이와 조건문 등을 활용해서 만드는 거라서
조금만 천천히 봐보시면 이해 + 응용도 되실거라고 생각 됩니다.
급하게 쓰실 분들은 복붙 해서 일단 그냥 바로 쓰시고 나중에 한번 쭉 훑어보시는 것도 ㅎㅎ
public int checkStringLength(String str){ //순수 문자열 10글자 미만 int cnt = 0; for(int i = 0 ; i < str.length() ; i++) { if(str.charAt(i) != ' '){ cnt++; } } return cnt; } //내용 전체가 공백일 때 public boolean spaceCheck(String spaceCheck) { boolean isChar = false; for(int i = 0 ; i < spaceCheck.length() ; i++) { if(spaceCheck.charAt(i) != ' '){ isChar = true; } } return isChar; } //전체가 한 종류의 글자 //공백과 한종류의 글자 혼합 public boolean onlyOneCharCheck(String str){ boolean is = false; char tmpString = str.charAt(0); for(int i = 0 ; i < str.length()-1 ; i++) { if(i > 0 && str.charAt(i) == ' ') tmpString = str.charAt(i-1); if(str.charAt(i) != str.charAt(i+1) && str.charAt(i) != ' ' && str.charAt(i+1) != ' '){ is = true; } else if(tmpString != str.charAt(i+1) && str.charAt(i+1) != ' '){ is = true; } } return is; } //공백이 글자수보다 많은 경우 public boolean spaceAndOneCharCheck(String str){ boolean is = false; int spaceCount, charCount; spaceCount = charCount = 0; for(int i = 0; i < str.length(); i++){ if(str.charAt(i) == ' ') { spaceCount++; } else { charCount++; } } if(spaceCount < charCount) { is = true; } return is; }
공백을 제외한 글자수 체크는 글자 카운트를 리턴해주고, 나머지는 boolean 값으로 true/false 값을 리턴해줍니다.
이 외에 다른 체크 함수가 필요하다면 저것들을 분석해서 응용하시면 될 것이라고 생각되네요~
아래는 위 메서드를 모두 적용한 문자열 체크 조건문 입니다.
공백 제외 문자 수 10미만 이거나
내용 자체가 다 공백일 경우나 (" ")
한글자만 반복되거나 (예를들어 "ㅇㅇㅇㅇㅇ")
한글자와 공백시 섞여서 반복 될 때 (예를들어 "아 아 아 아" 이런식으로)
공백이 글자보다 더 많을 때 (예를들어 " 아 아 ")
if문 안의 내용을 수행하게 됩니다.
if(checkStringLength(str) < 10 || !spaceCheck(str) || !onlyOneCharCheck(str) || !spaceAndOneCharCheck(str)){ //공백을 제외한 문자수가 10미만, 내용전체가 공백일 때, 내용 중 한글자만 반복될 때, 내용 중 한글자와 공백이 섞어서 반복 될 때, 내용 중 공백이 글자보다 더 많을때 //이 중 하나의 조건이라도 만족하면 if문 안으로 들어가게됩니다. //내용을 성실하게 입력하라는 메시지 등 출력 }
만약 또 다른 추가 검사 조건이 있으시다면 앞서 보여드린 방법대로 검사 기능을 수행하는 메서드를 만들고, if문 안에다가 OR문으로 하나 더 추가하면 되겠죠?
그럼 모두들 즐코딩 하시고..
도움이 되셨다면 아래 하트 뿅..
▼▼▼
'Android' 카테고리의 다른 글
[안드로이드] 백터이미지(svg) 적용하기 (0) | 2017.11.13 |
---|---|
[안드로이드] 미리보기 화면 타이틀바(액션바) 없애기 (0) | 2017.11.07 |
안드로이드 피카소(Picasso) 기본 사용 방법 (0) | 2017.09.29 |
[안드로이드/Android] 자바코드로 글자 색 변경 3가지 (0) | 2016.06.25 |
- AD
- For 개발자