C# 정규식 문자열 분할: 따옴표 밖의 쉼표
기존의 쉼표 기반 분할 방법을 사용하면 쉼표가 포함된 문자열을 처리하는 것이 어려울 수 있습니다. 이 문서에서는 C#과 정규식을 사용하여 따옴표로 묶일 수 있는 쉼표가 포함된 문자열을 분할하는 솔루션을 보여줍니다.
문제 설명:
SQL 코드 조각을 나타내는 다음 문자열을 고려하세요.
<code>('ABCDEFG', 123542, 'XYZ 99,9')</code>
목표는 이 문자열을 세 부분으로 나누는 것입니다.
세 번째 매개변수("XYZ 99,9")의 쉼표를 구분 기호로 간주하면 안 되기 때문에 문제가 발생합니다.
정규 표현식 솔루션:
이 문제를 해결하기 위해 앞에 짝수 개의 작은따옴표가 있는 경우에만 쉼표와 일치하는 정규식을 사용할 수 있습니다. 이 모드를 사용하면 따옴표 안의 쉼표가 분리되지 않습니다.
<code>",(?=(?:[^']*'[^']*')*[^']*$)"</code>
사용법:
<code class="language-csharp">var result = Regex.Split(sampleString, ",(?=(?:[^']*'[^']*')*[^']*$)");</code>
설명:
출력:
결과 배열의 출력은 다음과 같습니다.
<code>{"'ABCDEFG'", "123542", "'XYZ 99,9'"}</code>
이는 인용된 인수를 그대로 유지하면서 따옴표 밖의 쉼표를 기준으로 문자열을 성공적으로 분할하는 방법을 보여줍니다.
위 내용은 C# Regex는 따옴표 안에 쉼표를 사용하여 문자열을 어떻게 분할할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!