공백에서 문자열 분할, Java에서 따옴표 붙은 하위 문자열 유지
Java의 문자열 분할은 다목적 도구이지만, 다음과 같은 문제가 발생할 때 문제가 발생할 수 있습니다. 부분 문자열을 인용했습니다. 인용된 하위 문자열을 단일 단어로 처리하면서 공백을 기준으로 문자열을 효율적으로 분할하려면 다음 방법을 고려하십시오.
정규식을 사용하면 솔루션은 토큰을 인용되지 않은 문자열 또는 공백 문자 또는 임의 개수의 문자를 포함하는 따옴표 붙은 시퀀스. 결과는 인용된 부분 문자열을 정확하게 유지하는 토큰화된 요소 목록입니다.
Pattern pattern = Pattern.compile("([^\"]\\S*|\". ?\")\\s*"); Matcher matcher = pattern.matcher(str); Listtokens = 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