java.lang 패키지에는 배열을 반환하는 String.split() 메서드가 있습니다.
제 애플리케이션에서 일부를 사용했으며 참조용으로만 요약하겠습니다.
1. "."을 구분자로 사용하는 경우 String.split("\.")로 작성해야 정확하게 구분할 수 있습니다. 🎜>
2. "|"를 구분자로 사용하는 경우 String.split("\|")로 작성해야 정확하게 구분할 수 있습니다. ;
"." 및 "|"는 모두 이스케이프 문자이므로 "\"를 추가해야 합니다.
3. 문자열에 구분 기호가 여러 개 있는 경우에는 "|"를 사용할 수 있습니다. "acount=? 및 uu =? 또는 n=?"과 같은 연결 문자로 세 가지를 모두 분리하려면 String.split("and|or");
문자열을 사용할 수 있습니다. 분리하는 분할 방법 문자열을 사용할 때 일부 특수 문자를 구분 기호로 사용하면 예상한 결과를 얻지 못할 수 있습니다.
jdk 문서의 지침을 살펴보겠습니다.
public String[] Split(String regex)
주어진 정규 표현식과 일치하는 문자열을 분할합니다.
매개변수 regex는 단순한 문자열이 아닌 정규식 일치 패턴입니다. 예를 들어 다음 코드를 테스트하고 세로 막대를 사용하여 문자열을 구분하는 경우 | 예상 결과
Java 코드
String[] aa = "aaa|bbb|ccc".split("|"); >
//String[] aa = "aaa|bbb|ccc".split("\|") 이 방법으로만 올바른 결과를 얻을 수 있습니다
for (int i = 0 ; i
System.out.println("--"+aa[i]) } 세로 *를 사용하여 문자열을 구분하면 java.util.regex.PatternSyntaxException 예외가 발생합니다. 더하기 기호 +가 됩니다. Java 코드 String[] aa = "aaa*bbb*ccc".split("*") //String[] aa = "aaa|bbb|ccc".split("\*"); 이런 식으로 올바른 결과를 얻을 수 있습니다 사용 사용 사용 사용 i System.out.println("--"+aa[i]) } 분명히 + *는 유효한 패턴 일치 규칙 표현식이 아니며 "\*" "\+" 결과로 이스케이프 처리한 후 올바른 값을 얻을 수 있습니다. "|"는 문자열을 분리할 때 실행할 수 있지만, "\|"를 이스케이프 처리해야 올바른 결과를 얻을 수 있습니다. 그리고 문자열에 "" 문자를 사용하려면 먼저 "aaaabbbb"라는 문자열을 표현하려면 "aaaa"를 사용해야 합니다. \bbbb". 분리하려면 이렇게 해야 올바른 결과를 얻을 수 있습니다.
Java 코드 String[] aa = "aaa\bbb\bccc ".split("\\");