java에서는 문자열 자르기에 관련된 함수 중에 substring과 split 함수에 대해서 알아보자
SubString
substring함수는 인자 값에 따라서 크게 두가지 방법으로 나뉜다.
- substring(int index)
- substring(int beginIndex, int endIndex)
먼저 인자 값이 하나인 함수부터 알아보자
- substring(int index)
index로 해당 위치를 포함하여 이후의 모든 문자열을 리턴 시키는 함수
index는 0부터 시작한다.
String str = "0123456789";
String str2 = "안녕하세요~ IT블로그입니다.";
System.out.println("substring : " + str.substring(4));
System.out.println("substring : " + str2.substring(4));
============================
[결과]
substring : 456789
substring : 요~ IT블로그입니다.
- substring(int beginIndex, int endIndex)
beginIndex 위치에서 시작하여 endIndex 전 위치까지의 값을 리턴 시키는 함수
beginIndex - 시작 부분을 지정
endIndex - 문자열의 끝 부분 지정 (n-1까지의 위치)
String str = "0123456789";
String str2 = "안녕하세요~ IT블로그입니다.";
System.out.println("substring : " + str.substring(4,8));
System.out.println("substring : " + str2.substring(4,12));
================================================================
[ 결과 ]
substring : 4567
substring : 요~ IT블로그
substring 활용 예제
String str = "0123456789";
String str2 = "안녕하세요~ IT블로그입니다.";
System.out.println("마지막 문자제거 : " + str.substring(0, str.length()-1));
System.out.println("마지막 3글자 자르기 : " + str.substring(str.length()-3));
System.out.println("특정단어 앞부분 자르기 : " + str2.substring( str2.indexOf("IT")) );
=======================================================================
[ 결과 ]
마지막 문자제거 : 012345678
마지막 3글자 자르기 : 789
특정단어 전까지 자르기 : IT블로그입니다.
split
String값을 특정 문자를 기준으로 끊어서 배열에 저장시켜준다.
String str = "사과,배,바나나";
String[] array = str.split(",");
for(int i =0; i<array.length; i++){
System.out.println("array["+i+"] : " + array[i] );
}
=================================================================
[ 결과 ]
array[0] : 사과
array[1] : 배
array[2] : 바나나
정규식을 사용한 split
String str = "1aA2bB3cC";
String[] results = str.split("[0-9]");
for (int i = 0; i < results.length; i++) {
System.out.println("results[" +i + "] = " + results[i]);
}
===========================================================
[ 결과 ]
results[0] =
results[1] = aA
results[2] = bB
results[3] = cC
results[0] : 앞에 아무것도 없으므로 공백
results[1] : 1과 2사이에 있는 aA를 자름
...
숫자 | [0-9] |
알파벳 대문자 | [A-Z] |
알파벳 소문자 | [a-z] |
[ Substring, Split 외 문자열 추출 관련 함수]
- indexOf(String a) : a의 문자의 위치 값을 숫자로 얻음.
- int indexOf(String str) : 문자열 str를 찾아서 존재하면 첫째 문자 위치 값을 반환, 없으면 -1을 반환한다.
- lastindexOf(String a) : a 문자를 뒤에서부터 찾아 위치 값 숫자를 얻는다.
- Char charAt(int index) : String 문자열에서 index 번째 문자 값 1개를 가져온다.
728x90
'Spring > Java' 카테고리의 다른 글
[ Java ] 파일 사이즈 구하기 (Files, FileChannel, File) (0) | 2022.04.21 |
---|---|
[ java ] 파일 다운로드 완료 시 로딩바 종료 기능 - 세션 이용 (0) | 2022.04.20 |
[ Java / Spring ] 스케줄링(@Scheduled) 사용법 & 크론(cron) 표현식 (0) | 2022.04.11 |
[ Java ] 진수변환 (10진수 ↔ 2진수, 8진수, 16진수) (0) | 2022.04.08 |
[ Java ] String.format() - 문자열 형식 설정 (0) | 2022.04.08 |
댓글