Java - substring()으로 문자열을 자르기

JS · 05 Jan 2021

Java의 String은 substring() 메소드를 제공하며, 이 메소드로 문자열을 자를 수 있습니다.

substring()으로 문자열을 자르는 방법을 알아보겠습니다.

String.substring() Syntax

substring()은 인자로 전달된 index를 기준으로 문자열을 자르고 String을 리턴하는 메소드입니다.

String은 다음과 같은 substring 메소드들을 제공합니다.

public String substring(int beginIndex)
public String substring(int beginIndex, int endIndex)
  • 인자로 beginIndex만 전달하면, 이 index가 포함된 문자부터 마지막까지 잘라서 리턴합니다.
  • 인자로 beginIndex, endIndex를 모두 전달하면 begin을 포함한 문자부터 endIndex 이전 index의 문자까지 잘라서 리턴합니다.

String.substring() 예제1

다음은 substring을 이용하여 문자열을 자르는 예제입니다.

String str = "Hi guys. This is split example";
String result = str.substring(17);
String result2 = str.substring(17, 22);

System.out.println(result);
System.out.println(result2);

Output:

split example
split

beginIndex로 17을, endIndex로 22를 전달하면 index 17을 포함하고, 22를 포함하지 않는 문자열을 리턴합니다. 즉, index 17의 문자 s부터, index 21의 문자는 t까지 잘라서 리턴합니다.

String.substring() 예제2

다음은 indexOf()로 어떤 문자의 index를 찾고 그 index로 substring()에 전달하는 예제입니다.

String str = "This island is beautiful";
int beginIndex = str.indexOf("is");
int endIndex = str.length();
String result = str.substring(beginIndex, endIndex);

System.out.println(result);

Output:

is island is beautiful

indexOf()는 인자로 전달된 문자열의 index를 리턴합니다. 왼쪽에서 오른쪽 순서로 탐색하며 가장 첫번째로 발견한 문자열의 index를 리턴합니다.

String.substring() 예제3

만약 is beautiful만 잘라내고 싶다면 어떻게 해야할까요? 문자열 마지막에서 왼쪽방향으로 is를 찾고 그 index를 substring()으로 전달하면 됩니다. 이런 경우 lastIndexOf()를 사용하면 됩니다.

다음은 lastIndexOf()substring()을 사용하여 문자열을 자르는 예제입니다.

String str = "This island is beautiful";
int beginIndex = str.lastIndexOf("is");
int endIndex = str.length();
String result = str.substring(beginIndex, endIndex);

System.out.println(result);

Output:

is beautiful

참고

댓글을 보거나 쓰려면 이 버튼을 눌러주세요.
codechachaCopyright ©2019 codechacha