Java에서 문자열을 분할하는 방법
이 자습서에서는 Java에서 문자열을 분할하는 방법에 대해 설명합니다.
Java의 String
은 기본이 아닌 데이터 유형 중 하나이며 일련의 문자. 다음과 같이 간단하게 문자열 변수를 선언 할 수 있습니다.
String string = "I am a string";
String string1 = "I am another string";
달성하려는 작업에 따라 몇 가지 문자열 처리 작업을 수행해야 할 수도 있습니다. CSV 형식으로 데이터를 나타내는 문자열이있는 경우를 생각해 봅시다. 모두 쉼표로 구분됩니다.
String data = "Apple,Banana,Orange,Peach";
우리는 이것으로부터 모든 개별 문자열을 원합니다. 따라서 다음 출력을 얻기 위해 데이터를 분리하기 위해 쉼표를 기반으로 문자열을 분할해야합니다.
> Apple
> Banana
> Orange
> Peach
Java 문자열에는 기본적으로 분할 기능이 있습니다 String#split()
정규식을 입력으로 받아서 결과 문자열의 배열을 반환합니다. 주어진 입력을 분할 한 후.
아래 예제는이 메소드를 사용하여 Java에서 주어진 문자열을 분할하는 방법을 보여줍니다.
public class Main {
public static void main(String args[]) {
String data = "Apple,Banana,Orange,Peach";
String[] splitted = data.split(",");
for (int i = 0; i < splitted.length; i++) {
System.out.println(splitted[i]);
}
}
}
위의 코드는 다음을 출력합니다.
Apple
Banana
Orange
Peach
다른 매개 변수에서 문자열을 분할하기 위해이 방법을 시도해 보겠습니다.
점으로 분할
이번에는"One.Two.Three.Four"
와 같은 문자열이 있습니다. 다시 동일한 방법을 사용하여 분할하겠습니다.
public class Main {
public static void main(String args[]) {
String data = "One.Two.Three.Four";
String[] splitted = data.split(".");
for (int i = 0; i < splitted.length; i++) {
System.out.println(splitted[i]);
}
}
}
위의 코드는 아무것도 출력하지 않습니다! split
함수가 정규 표현식패턴을 입력으로 취한다고 언급했습니다. 따라서 일부 특수 문자로 분할하려는 경우 추가 조치를 취해야합니다.
특별한 의미를 가진 12 개의 문자가 있습니다.
- 백 슬래시
\
- 캐럿
^
- 달러 기호
$
- 마침표 또는 점
.
- 수직 막대 또는 파이프 기호
|
- 물음표
?
- 별표 또는 별표
*
- 더하기 기호
+
- 여는 괄호
(
- 닫는 괄호
)
- 및 여는 대괄호
[
- 여는 중괄호
{
이러한 특수 문자를 종종 “메타 문자"라고합니다.
위의 문자로 문자열을 분할하려면 백 슬래시\
를 사용하여 이러한 특수 문자를 이스케이프 할 수 있습니다.따라서data.split('.')
대신data.split('\\.')
를 사용하십시오.
public class Main {
public static void main(String args[]) {
String data = "One.Two.Three.Four";
String[] splitted = data.split("\\.");
for (int i = 0; i < splitted.length; i++) {
System.out.println(splitted[i]);
}
}
}
위 코드는 이제 올바르게 출력됩니다.
One
Two
Three
Four
한 가지 더 예를 들어 보겠습니다.
문자열로 분할
이번에는"OneFruitTwoFruitThreeFruit"
와 같은 문자열이 있습니다. 문자열Fruit
를 기준으로 동일한 방법을 사용하여 분할 해 보겠습니다.
public class Main {
public static void main(String args[]) {
String data = "OneFruitTwoFruitThreeFruit";
String[] splitted = data.split("Fruit");
for (int i = 0; i < splitted.length; i++) {
System.out.println(splitted[i]);
}
}
}
위의 코드는 다음을 출력합니다.
One
Two
Three
이제 주어진 매개 변수에 대해 Java에서 문자열을 분할하는 방법을 알았습니다.