Notice
Recent Posts
Recent Comments
Link
투케이2K
232. (java/자바) matches 정규식 (RegEx) 사용법 정리 - 특수문자 제거 및 지정 문자 허용 본문
[개발 환경 설정]
개발 툴 : Eclipse
개발 언어 : Java
[소스 코드]
package ex6;
public class MainActivity9 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("[Program Start]");
System.out.println("");
// 초기 변수 선언 실시
String data = "admin123, ***! TWOK.반가워";
System.out.println("원본 문자 : " + data);
System.out.println("원본 길이 : " + data.length());
System.out.println("");
// 특수문자 제거 결과 확인
String removeData = replaceSpecialString(data);
System.out.println("특수문자 제거 결과 : " + removeData);
System.out.println("특수문자 제거 길이 : " + removeData.length());
System.out.println("");
}// 메인 종료
public static String replaceSpecialString(String value) {
// 결과를 반환할 변수 선언 실시
String result = "";
/*[설 명]
* 1. matches 를 사용하면 정규식 만들 수 있습니다 (RegEx)
* 2. 정규식은 사용 방법 : 대괄호 [정규식 패턴] 을 지정해서 특정 패턴의 문자만 출력할 수 있습니다
* 3. 정규식 패턴 [a-z] : 영어 소문자 지정
* 4. 정규식 패턴 [A-Z] : 영어 대문자 지정
* 5. 정규식 패턴 [ㄱ-ㅎㅏ-ㅣ가-힣] : 한글 지정
* 6. 정규식 패턴 [.,!?] : 허용하고자하는 특수문자 지정
* 7. 정규식 패턴 [^a-z] : 꺽쇠를 붙이는 경우 영어 소문자가 아닌 경우
* 8. [a-zA-Z0-9 ㄱ-ㅎㅏ-ㅣ가-힣] : a-z 소문자, A-Z 대문자, 0-9 숫자, 한글 (ㄱ-ㅎ / ㅏ-ㅣ / 가-힣) [허용]
* 9. [a-zA-Z0-9 ㄱ-ㅎㅏ-ㅣ가-힣.,] : a-z 소문자, A-Z 대문자, 0-9 숫자, 한글(ㄱ-ㅎ / ㅏ-ㅣ / 가-힣), 반점, 마침표 [허용]
* 10. 특수문자 및 공백 제거 : [a-zA-Z0-9 ㄱ-ㅎㅏ-ㅣ가-힣] 정규식과 replaceAll을 사용하면됩니다
*/
// for 반복문을 선언해서 문자 한글자씩 확인 실시
for(int i=0; i<value.length(); i++) {
if (String.valueOf(value.charAt(i)).matches("[a-zA-Z0-9 ㄱ-ㅎㅏ-ㅣ가-힣]")) { // 지정된 패턴 형식 문자열인 경우
result += value.charAt(i); // 문자열 추가
}
}
// 공백까지 제거해서 결과 반환 시 사용
result = result.replaceAll(" ", "");
// 결과 반환 실시
return result;
}
}// 클래스 종료
[결과 출력]
[요약 설명]
/*[설 명]
* 1. matches 를 사용하면 정규식 만들 수 있습니다 (RegEx)
* 2. 정규식은 사용 방법 : 대괄호 [정규식 패턴] 을 지정해서 특정 패턴의 문자만 출력할 수 있습니다
* 3. 정규식 패턴 [a-z] : 영어 소문자 지정
* 4. 정규식 패턴 [A-Z] : 영어 대문자 지정
* 5. 정규식 패턴 [ㄱ-ㅎㅏ-ㅣ가-힣] : 한글 지정
* 6. 정규식 패턴 [.,!?] : 허용하고자하는 특수문자 지정
* 7. 정규식 패턴 [^a-z] : 꺽쇠를 붙이는 경우 영어 소문자가 아닌 경우
* 8. [a-zA-Z0-9 ㄱ-ㅎㅏ-ㅣ가-힣] : a-z 소문자, A-Z 대문자, 0-9 숫자, 한글 (ㄱ-ㅎ / ㅏ-ㅣ / 가-힣) [허용]
* 9. [a-zA-Z0-9 ㄱ-ㅎㅏ-ㅣ가-힣.,] : a-z 소문자, A-Z 대문자, 0-9 숫자, 한글(ㄱ-ㅎ / ㅏ-ㅣ / 가-힣), 반점, 마침표 [허용]
* 10. 특수문자 및 공백 제거 : [a-zA-Z0-9 ㄱ-ㅎㅏ-ㅣ가-힣] 정규식과 replaceAll을 사용하면됩니다
*/
반응형
'Java' 카테고리의 다른 글
Comments