반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자바
- html
- ArrayList
- Eclipse
- HashMap
- 이클립스
- Visual Studio Code
- Array
- list
- 인텔리제이
- Java
- table
- 정규식
- CSS
- replace
- Button
- js
- 문자열
- 배열
- 이탈리아
- map
- vscode
- string
- IntelliJ
- input
- date
- 자바스크립트
- javascript
- json
- CMD
Archives
- Today
- Total
어제 오늘 내일
[Java Pattern] split() - 정규표현식으로 문자열 나누기 본문
문자열을 특정 구분자로 나누고 싶을 때 보통 String.split()
을 많이 사용합니다. 하지만 더 복잡한 조건(여러 구분자, 정규표현식 기반 분리)이 필요하다면 Pattern.split()
을 활용하는 것이 좋습니다.
1. split()
메소드 개요
- 메소드 시그니처
public String[] split(CharSequence input) public String[] split(CharSequence input, int limit)
input
: 분리할 문자열limit
: 분할할 횟수 제한 (양수: 최대 개수, 0: 제한 없음, 음수: 모든 결과 포함)
2. 기본 사용 예제
import java.util.regex.*;
public class PatternSplitExample {
public static void main(String[] args) {
String input = "apple, banana; orange|grape";
Pattern pattern = Pattern.compile("[,;|]");
String[] fruits = pattern.split(input);
for (String fruit : fruits) {
System.out.println(fruit.trim());
}
}
}
예제 설명
Pattern.compile("[,;|]")
→ 쉼표(,), 세미콜론(;), 파이프(|)를 구분자로 사용하도록 정규식 패턴을 만듭니다.pattern.split(input)
→ 입력 문자열을 해당 구분자 기준으로 나눕니다.- 실행 결과:
apple
banana
orange
grape
즉, 여러 구분자를 한 번에 처리할 수 있습니다.
3. limit 인자 사용 예제
import java.util.regex.*;
public class PatternSplitLimitExample {
public static void main(String[] args) {
String input = "one,two,three,four";
Pattern pattern = Pattern.compile(",");
String[] result = pattern.split(input, 2);
for (String part : result) {
System.out.println(part);
}
}
}
실행 결과
one
two,three,four
limit
값을 2
로 주었기 때문에 최대 2개의 문자열만 반환되고, 나머지는 마지막 요소에 포함됩니다.
4. 활용 사례
- CSV, 로그 파일 등 다양한 구분자로 이루어진 문자열 분리
- 공백/특수문자 기반 문자열 토큰화
- 사용자 입력값을 특정 패턴에 맞게 분리할 때
정리
Pattern.split()
메소드는 단순 구분자를 넘어 정규표현식을 활용한 문자열 분리에 강력한 기능을 제공합니다. 특히 여러 구분자를 동시에 처리해야 하는 경우 String.split()
보다 훨씬 유연하게 사용할 수 있습니다.
반응형
'IT > Java' 카테고리의 다른 글
[Java Matcher] find() - 문자열에서 패턴 찾기 (0) | 2025.10.04 |
---|---|
[Java Matcher] matches() - 문자열 전체가 패턴과 일치하는지 확인하기 (0) | 2025.10.04 |
[Java Pattern] compile() - 정규표현식 패턴 만들기 (0) | 2025.10.03 |
[Java Pattern & Matcher] 정규표현식 클래스 개요 (0) | 2025.10.02 |
[Java Character] getNumericValue() - 문자를 숫자로 변환하기 (0) | 2025.10.02 |
Comments