Java에서 문자열 자르기
-
Java에서
trim()
메서드를 사용하여 문자열 자르기 -
Character.isWhiteSpace
및while
을 사용하여 왼쪽과 오른쪽에서 별도로 문자열 자르기 - Apache Commons를 사용하여 왼쪽과 오른쪽에서 별도로 문자열 자르기
이 기사에서는 시작점이나 끝점에 공백이 있는 문자열을 자르는 방법을 알아봅니다.
Java에서 trim()
메서드를 사용하여 문자열 자르기
트리밍에 권장되는 방법은 문자열의 앞뒤 공백을 양쪽에서 트리밍하려는 경우 trim()
메서드를 사용하는 것입니다. trim()
은 공백을 제거하고 선행 공백이 없는 문자열을 반환합니다.
아래에서 시작 지점과 끝 지점 모두에 공백이 있는 문자열이 있는 stringToTrim
문자열을 사용합니다. 공백이 제거되었는지 확인하기 위해 자르기 전후에 문자열을 인쇄합니다. 더하기(+) 기호는 문자열에서 공백이 있는 위치를 나타냅니다.
stringToTrim.trim()
을 호출하면 공백이 제거되었음을 알 수 있습니다.
public class TrimString {
public static void main(String[] args) {
String stringToTrim = " This is just an example ";
System.out.println("Before trimming +++" + stringToTrim + "+++");
stringToTrim = stringToTrim.trim();
System.out.println("After trimming +++" + stringToTrim + "+++");
}
}
출력:
Before trimming +++ This is just an example +++
After trimming +++This is just an example+++
Character.isWhiteSpace
및 while
을 사용하여 왼쪽과 오른쪽에서 별도로 문자열 자르기
우리는 문자열이 왼쪽이든 오른쪽이든 한 쪽에서만 자를 수 있습니다. 여기에 두 가지 예가 있습니다. 하나는 왼쪽에서 자르고 다른 하나는 오른쪽에서 공백만 제거하는 것입니다.
다음 코드에서는 양쪽 끝에 공백이 있는 stringToTrim
문자열을 사용합니다. int
변수 i
를 가져 와서 0으로 초기화합니다. 그런 다음 i
변수가 stringToTrim
의 길이보다 작아질 때까지 실행되는 while
루프를 실행하고 Character를 사용하여 공백 문자도 확인합니다. .isWhitespace()
그리고 메소드 내부에서 i
값을 사용하여 모든 문자를 하나씩 전달합니다. 두 조건이 모두 충족되어야 하며, true인 경우 i
의 값이 1 증가합니다.
이제 substring()
을 호출하여 공백 문자를 자릅니다. substring()
은 문자열의 왼쪽에서 시작하므로 문자열의 왼쪽을 자르고 왼쪽에 공백이 없는 문자열을 반환합니다.
public class TrimString {
public static void main(String[] args) {
String stringToTrim = " This is just an example ";
int i = 0;
while (i < stringToTrim.length() && Character.isWhitespace(stringToTrim.charAt(i))) {
i++;
}
String leftTrim = stringToTrim.substring(i);
System.out.println("Before trimming +++" + stringToTrim + "+++");
System.out.println("After trimming +++" + leftTrim + "+++");
}
}
출력:
Before trimming +++ This is just an example +++
After trimming +++This is just an example +++
이 예에서는 동일한 문자열을 사용하지만 i
를 0으로 초기화하는 대신 stringToTrim().length - 1
로 초기화한 다음 while
에서 i
가 0과 같습니다. 공백을 확인하는 방법은 동일합니다. 이제 조건이 충족되면 i
변수를 1만큼 줄입니다.
substring()
이 문자열의 왼쪽에서 시작하므로 시작점을 0으로 전달하고 두 번째 인수는 오른쪽 i+1
에서 시작하여 오른쪽 끝의 모든 공백을 제거하는 값입니다.
public class TrimString {
public static void main(String[] args) {
String stringToTrim = " This is just an example ";
int i = stringToTrim.length() - 1;
while (i >= 0 && Character.isWhitespace(stringToTrim.charAt(i))) {
i--;
}
String rightTrim = stringToTrim.substring(0, i + 1);
System.out.println("Before trimming +++" + stringToTrim + "+++");
System.out.println("After trimming +++" + rightTrim + "+++");
}
}
출력:
Before trimming +++ This is just an example +++
After trimming +++ This is just an example+++
Apache Commons를 사용하여 왼쪽과 오른쪽에서 별도로 문자열 자르기
이 예에서는 Apache Commons라는 타사 라이브러리를 사용합니다. 프로젝트에 라이브러리를 포함하기 위해 다음 종속성을 사용합니다.
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
왼쪽에서 stringToTrim
문자열을 트리밍하려면 StringUtils.stringStart()
를 사용하고 트리밍할 문자열과 공백으로 처리되는 null
을 트리밍할 문자를 전달합니다. StringUtils.stripEnd()
를 사용하여 오른쪽에서 트리밍하고 동일한 프로세스를 따릅니다.
import org.apache.commons.lang3.StringUtils;
public class TrimString {
public static void main(String[] args) {
String stringToTrim = " This is just an example ";
String leftTrim = StringUtils.stripStart(stringToTrim, null);
String rightTrim = StringUtils.stripEnd(stringToTrim, null);
System.out.println("Before trimming +++" + stringToTrim + "+++");
System.out.println("After left trimming +++" + leftTrim + "+++");
System.out.println("After right trimming +++" + rightTrim + "+++");
}
}
출력:
Before trimming +++ This is just an example +++
After left trimming +++This is just an example +++
After right trimming +++ This is just an example+++
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn