문자열 분할 중에 구분 기호를 유지할 수 있습니까?
문자열 분할 중 구분 기호 유지
구분 기호 집합으로 구분된 여러 줄 문자열로 작업할 때 일반적인 작업은 문자열을 여러 줄로 분할하는 것입니다. 개별 부품. 일반적으로 이러한 목적으로 String.split 메서드가 사용됩니다. 그러나 이 접근 방식은 결과에서 구분 기호를 생략합니다.
Lookahead 및 Lookbehind 사용
분할 중에 구분 기호를 유지하기 위해 정규식에서 Lookahead 및 LookBehind 개념을 사용할 수 있습니다. 활용하세요.
다음 코드를 고려하세요.
<code class="java">System.out.println(Arrays.toString("a;b;c;d".split("(?<=;)"))); System.out.println(Arrays.toString("a;b;c;d".split("(?=;)"))); System.out.println(Arrays.toString("a;b;c;d".split("((?<=;)|(?=;))")));</code>
이 코드는 Lookahead 및 LookBehind를 사용하여 문자열을 검사합니다. 구체적으로 (?
마지막 줄은 on ((?<=;)|(?=;))에서는 문자열을 텍스트와 구분 기호 구성 요소로 효율적으로 분리합니다.
[a;, b;, c;, d] [a, ;b, ;c, ;d] [a, ;, b, ;, c, ;, d]
원하는 결과에서 세 번째 줄은 정확한 요구 사항을 캡처합니다. 여기서 각 텍스트 세그먼트 뒤에는 해당 구분 기호가 옵니다.
변수로 가독성 향상
정규식의 가독성을 높이려면 해당 기능을 나타내는 변수를 생성하는 것이 좋습니다. 예를 들어, 다음 코드는 WITH_DELIMITER 변수를 사용하여 구분 기호를 지정합니다.
<code class="java">static public final String WITH_DELIMITER = "((?<=%1$s)|(?=%1$s))"; public void someMethod() { final String[] aEach = "a;b;c;d".split(String.format(WITH_DELIMITER, ";")); ... }</code>
이 기술은 정규 표현식의 의도를 명확히 하는 데 도움이 됩니다.
위 내용은 문자열 분할 중에 구분 기호를 유지할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











2025 년 상위 4 개의 JavaScript 프레임 워크 : React, Angular, Vue, Svelte

카페인 또는 구아바 캐시와 같은 라이브러리를 사용하여 자바 애플리케이션에서 다단계 캐싱을 구현하려면 어떻게해야합니까?

Java의 클래스로드 메커니즘은 다른 클래스 로더 및 대표 모델을 포함하여 어떻게 작동합니까?

Spring Boot Snakeyaml 2.0 CVE-2022-1471 문제 고정

캐싱 및 게으른 하중과 같은 고급 기능을 사용하여 객체 관계 매핑에 JPA (Java Persistence API)를 어떻게 사용하려면 어떻게해야합니까?

고급 Java 프로젝트 관리, 구축 자동화 및 종속성 해상도에 Maven 또는 Gradle을 어떻게 사용합니까?
