2013-10-23 3 views
-1
var list = string.Join(",", item.Split(new string[] { "2|" }, StringSplitOptions.RemoveEmptyEntries)); 

위의 코드를 사용하면 잘 작동합니다. 나는 아래와 같이 분할 할"또는"을 사용하여 분할합니다.

,

2 | 또는 3 | 또는 4 | 또는 5 | 또는 6 | 또는 7 | 값이

이 경우

| 222 프로그램은 작업을 계속합니다.

값이

5 | 232 프로그램 인 경우 계속 진행됩니다.

예외없이 프로그램을 작동시키고 싶습니다.

"또는" "을 내 scerenio에 따라 어떻게 사용할 수 있습니까?

+1

이 질문은 LINQ와 어떤 관련이 있습니까? –

+3

질문을 이해할 수 없습니다. 원하는 출력에 대해 더 명시하고 싶을 수도 있습니다. –

+0

2 분할하고 싶습니다. 또는 3 | 또는 4 | 또는 5 | 또는 6 | 또는 7 | 값없이 2와 함께 3이 4와 함께 제공됩니다. 확실하지 않습니다. – user2902180

답변

1

나는 당신이 그렇게 당신은 또한 Regex를 사용하여 시도 할 수 있다면 형식의 일부 particular set이, 모든이 형식 \d|을 가지고 걱정해야 생각하지만, 충분히 간단하게하기 위해, 우리는 항상의 배열 string.Split을 사용할 수 있습니다 이 같은 배열 요소 중 하나에 의해 문자열을 분할 전달 string, 뭔가 :

var list = string.Join(",", item.Split(new string[] { "2|", "3|", "4|", "5|", "6|", "7|" }, 
         StringSplitOptions.RemoveEmptyEntries)); 

regex version를 들어, 다음과 같은 Regex.Replace을 사용해야합니다

,
var list = Regex.Replace(item, "(?<![2-7][|])[2-7][|](?![2-7][|])",","); 
1

[2-7] + |와 같은 패턴으로 Regex.Split을 사용해야합니다. 모든 숫자가 필요하면 [2-7]을 \ d로 바꾸십시오.

1
var regex = new Regex(@"\d\|"); 
var splitted = regex.Split(yourInput); 
+0

"d"는 무엇을 의미합니까? – user2902180

+0

'\ d'는 문자 클래스입니다. 자세한 내용은 [여기] (http://msdn.microsoft.com/en-us/library/az24scfc%28v=vs.110%29.aspx#character_classes)와 일치하고 숫자를 확인하십시오. –

관련 문제