본문 바로가기
JAVA

[JAVA(자바)] 문자열 자르기, 분리, 찾기, 추출 (substring, Split, indexOf, charAt)

by 초이사 2023. 1. 4.

자바 문자열에서 원하는 부분을 가져오는 메소드 중 자주 쓰이는 것을 정리하고자 글을 작성한다.

 

 

문자열 잘라내기

문자열의 인덱스 번호

 

  • substring(int index) : 문자열의 인덱스 index부터 끝까지 문자열을 가져온다. (=참조한다.)
  • substring(int index1, index2) : 문자열의 인덱스 index1부터 index2-1까지 문자열을 가져온다. 
String str = "자바문자열추출";

System.out.println(str.substring(0, 3));
System.out.println(str.substring(5));

//결과
//자바문
//추출

 

 

 

 

문자열 분리하기

  • split(String str) : str 문자열을 기준으로  끊어 분리하면 분리된 문자열을 배열에 넣어준다.
String str = "자바 문자 열 추출";

String[] tokens = str.split(" "); //공백을 기준으로 문자열 자르기

for(int i=0; i<tokens.length; i++){
	System.out.println(tokens[i]);
}

//결과
//자바
//문자
//열
//추출

 

 

 

 

문자열 위치 찾기

  • indexOf(String str) : 문자열 str이 찾아서 존재하면 str이 시작하는 인덱스값을 가져오고 없으면 -1을 리턴한다. 
String str = "자바문자열추출";

int index1 = str.indexOf(str);
int index2 = str.indexOf("문자");
int index3 = str.indexOf("C언어"); //문자열에 없는 문자

int idx1 = str.indexOf("문");
int idx2 = str.indexOf("추");

System.out.println(index1);
System.out.println(index2);
System.out.println(index3);
System.out.println(str.substring(idx1,idx2)); //indexOf()를 이용한 문자열 자르기

//결과
//0
//2
//-1
//문자열

 

 

 

 

문자열 문자 하나만 추출하기

  • substring(int inde1, int index2) : index1과 index2의 차가 1라면 한글자만 추출할 수 있다. ex) substring(0,1) -> 자
  • charAt(int index) : 문자열에서 index에 위치하는 문자를 가져온다. 이때 타입은 char타입이 된다. 
    • ex) String s2 = str.charAt(2); //컴파일 에러 char타입에 대입해야한다.
String str = "자바문자열추출";

String s1 = str.substring(0,1);
char s2 = str.charAt(2);

System.out.println(s1);
System.out.println(s2);

//결과
//자
//문

댓글