"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Java에서 따옴표 붙은 부분 문자열을 유지하면서 공백으로 문자열을 분할하는 방법은 무엇입니까?

Java에서 따옴표 붙은 부분 문자열을 유지하면서 공백으로 문자열을 분할하는 방법은 무엇입니까?

2024년 11월 14일에 게시됨
검색:145

How to Split Strings on Spaces While Preserving Quoted Substrings in Java?

공백에서 문자열 분할, Java에서 따옴표 붙은 하위 문자열 유지

Java의 문자열 분할은 다목적 도구이지만, 다음과 같은 문제가 발생할 때 문제가 발생할 수 있습니다. 부분 문자열을 인용했습니다. 인용된 하위 문자열을 단일 단어로 처리하면서 공백을 기준으로 문자열을 효율적으로 분할하려면 다음 방법을 고려하십시오.

정규식을 사용하면 솔루션은 토큰을 인용되지 않은 문자열 또는 공백 문자 또는 임의 개수의 문자를 포함하는 따옴표 붙은 시퀀스. 결과는 인용된 부분 문자열을 정확하게 유지하는 토큰화된 요소 목록입니다.

Pattern pattern = Pattern.compile("([^\"]\\S*|\". ?\")\\s*");
Matcher matcher = pattern.matcher(str);
List tokens = new ArrayList();

while (matcher.find()) {
    String token = matcher.group(1);
    tokens.add(token.replace("\"", "")); // Remove surrounding quotes if needed
}

이 예에서 "Location \"Welcome to india\" Bangalore Channai \"IT city\" Mysore" 문자열은 다음과 같이 토큰화됩니다.

Location
Welcome to india
Bangalore
Channai
IT city
Mysore

이 방법은 인용된 부분 문자열의 보존을 우아하게 처리하여 "Welcome to india" 또는 "IT city"와 같은 의미 있는 문구가 단일 토큰으로 유지되도록 합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3