문자열에서 어떤 종류의 문자만 제거하는 방법을 소개합니다. 예를 들어, 문자열에서 특수문자만 제거하거나 숫자만 제거할 수 있습니다. 또는 숫자를 제외한 다른 문자는 모두 제거할 수 있습니다.
1. 문자열에서 특수문자 제거
replaceAll()과 정규표현식을 사용하여 문자열에서 특수문자를 모두 제거할 수 있습니다.
아래와 같은 정규표현식을 사용하여 한글, 영어, 숫자, 공백을 제외한 다른 문자는 모두 제거할 수 있습니다.
\uAC00-\uD7A30: 모든 한글 음절(가-힣)a-z: 영어 소문자A-Z: 영어 대문자0-9: 숫자\\s: 띄어쓰기
아래 예제에서 \uAC00-\uD7A30-9a-zA-Z\\s는 한글, 영어, 숫자, 띄어쓰기에 해당하는 문자를 의미합니다. 앞에 ^는 이 정규표현식에 해당하지 않는 경우를 의미하며, not과 같습니다.
따라서 match의 패턴은 한글, 영어, 숫자, 띄어쓰기에 해당하지 않는 문자를 모두 찾으라는 의미입니다. 그리고 replaceAll(pattern, string)은 pattern에 해당하는 내용을 string으로 대체하라는 함수입니다. 만약 찾은 패턴을 공백으로 변환하면 특정 패턴의 문자를 제거하게 됩니다.
public class Example {
public static String replaceString(String str){
String match = "[^\uAC00-\uD7A30-9a-zA-Z\\s]";
str = str.replaceAll(match, "");
return str;
}
public static void main(String[] args) {
System.out.println(replaceString("AA**BB#@$CC 가나다-123"));
}
}Output:
AABBCC 가나다1232. 문자열에서 숫자만 남기기
아래와 같이 ^0-9 패턴을 사용하여 숫자가 아닌 문자를 모두 찾을 수 있습니다. 그리고 이 문자들을 공백으로 변환하여 제거할 수 있습니다.
public class Example1 {
public static String replaceString(String str){
String match = "[^0-9]";
str = str.replaceAll(match, "");
return str;
}
public static void main(String[] args) {
System.out.println(replaceString("AA**BB#@$CC 가나다-123"));
}
}Output:
1233. 문자열에서 숫자만 제거
아래와 같이 0-9 패턴으로 숫자만 찾을 수 있고, 공백으로 변환하여 제거할 수 있습니다.
public class Example2 {
public static String replaceString(String str){
String match = "[0-9]";
str = str.replaceAll(match, "");
return str;
}
public static void main(String[] args) {
System.out.println(replaceString("AA**BB#@$CC 가나다-123"));
}
}Output:
AA**BB#@$CC 가나다-4. 문자열에서 알파벳만 남기기
^a-zA-Z 패턴은 알파벳을 제외한 문자를 찾는 것이고, 이 패턴의 문자들을 공백으로 변환하여 제거하면 알파벳만 남게됩니다.
public class Example2 {
public static String replaceString(String str){
String match = "[^a-zA-Z]";
str = str.replaceAll(match, "");
return str;
}
public static void main(String[] args) {
System.out.println(replaceString("AA**BB#@$CC 가나다-123"));
}
}Output:
AABBCCLoading script...
Related Posts
- Java - Unsupported class file major version 61 에러
- Java - String.matches()로 문자열 패턴 확인 및 다양한 예제 소개
- Java - 문자열 공백제거 (trim, replace)
- Java - replace()와 replaceAll()의 차이점
- Java - ArrayList 초기화, 4가지 방법
- Java - 배열 정렬(Sorting) (오름차순, 내림차순)
- Java - 문자열(String)을 비교하는 방법 (==, equals, compare)
- Java - StringBuilder 사용 방법, 예제
- Java - 로그 출력, 파일 저장 방법 (Logger 라이브러리)
- Java IllegalArgumentException 의미, 발생 이유
- Java - NullPointerException 원인, 해결 방법
- Seleninum의 ConnectionFailedException: Unable to establish websocket connection 해결
- Java - compareTo(), 객체 크기 비교
- Java - BufferedReader로 파일 읽기
- Java - BufferedWriter로 파일 쓰기
- Java - BigInteger 범위, 비교, 연산, 형변환
- Java charAt() 함수 알아보기
- Java contains()로 문자(대소문자 X) 포함 확인
- Java - Set(HashSet)를 배열로 변환
- Java - 문자열 첫번째 문자, 마지막 문자 확인
- Java - 문자열 한글자씩 자르기
- Java - 문자열 단어 개수 가져오기
- Java - 1초마다 반복 실행
- Java - 배열을 Set(HashSet)로 변환
- Java - 여러 Set(HashSet) 합치기
- Java - 명령행 인자 입력 받기
- Java - 리스트 역순으로 순회, 3가지 방법
- Java - 특정 조건으로 리스트 필터링, 3가지 방법
- Java - HashMap 모든 요소들의 합계, 평균 계산
- Java - 특정 조건으로 HashMap 필터링
- Java - 싱글톤(Singleton) 패턴 구현
- Java - 숫자 왼쪽에 0으로 채우기
- Java - String 배열 초기화 방법
- Java - 정렬된 순서로 Map(HashMap) 순회
- Java - HashMap에서 key, value 가져오기