2012-11-14 2 views
-1
을 유지

가능한 중복 :
C# split string but keep split chars/separators닷넷 분할

원래 분할 문자를 떠날 것이다 닷넷 문자열 분할() 함수를 할 수있는 간단한 방법이 있나요 결과에?

"some text {that|or} another".Split('{','|','}'); 

가 함께 배열 될 것이다 : 것을

이러한

[0] = "some text " 
[1] = "{" 
[2] = "that" 
[3] = "|" 
... 

바람직 정규식없이.

+0

http://tackoverflow.com/questions/2484919/how-do-i-split-a-string-by-strings-and-include-the-delimiters-using-net @TimSchmelter 모든 답변이 정규식이 아닙니다. 구현. – D3vtr0n

+0

그 좋은 해결책은 .. thx –

답변

3

체크 아웃 this post

정규식 솔루션을 첫 번째 대답이 아닌 정규식 솔루션에 대한 두 번째 ... 개념에서

...

string source = "123xx456yy789"; 
foreach (string delimiter in delimiters) 
    source = source.Replace(delimiter, ";" + delimiter + ";"); 
string[] parts = source.Split(';'); 
+0

나는이 바로 대답 downvoted있어. 너 운 좋은 놈! – D3vtr0n

+0

@Devtron : 링크 만 응답은 stackoverflow에 링크 된 경우에도 권장되지 않습니다. 이 예제는 예제도 제공합니다. (그냥 짐작할 때) – Guvante

+0

@Guvante 광산은 대답 목록에서 더 좋은 예를 보았습니다. :) – D3vtr0n

0

당신이 할 수있는 String.IndexOf Method (String, Int32)을 사용하여 자신의 고유 한 문자를 찾아 초기 구분 기호 문자를 모두 찾아서 String.Split

의 결과와 병합하십시오.