Java에서 문자열을 분할하는 방법

Hassan Saeed 2023년12월11일
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에서 문자열을 분할하는 방법을 알았습니다.

관련 문장 - Java String