2016-11-11 1 views
1

가 나는 목록에서 몇 가지 문자열을 가지고 :.문자열의 마지막 특수 문자를 얻는 방법은 무엇입니까?

List<string> mylist = new List<string>(); 
mylist.Add("_+hello[]_"); 
mylist.Add("_+how||"); 
mylist.Add("_+are,,"); 
mylist.Add("||you=_"); 
mylist.Add("_+doing\"_"); 

내가 마지막 먼저 특수 문자 (+, _ [] = ") 모두 배열을하고 싶지을

string[,] array = new string[5,2] 

내 ? 배열은 끝의 모양은 다음과 같습니다

_+ AND [] _ 
_+ AND || 
_+ AND ,, 
|| AND =_ 
_+ AND "_ 

사람이 작업을 수행하는 방법을 알고 있습니까

미리 감사드립니다.

+2

지금까지 무엇을 생각해 냈습니까? – BugFinder

+1

이것은 의미가 없습니다. 첫 번째 문자를 원하지만'_ +'를 원합니다. –

+2

'Regex.Split (str, @ "[^ \ W _] +")' –

답변

3

영숫자 문자로 분리하려는 것 같습니다. \w 일치하는 숫자 나 문자를 강조하기 때문에, 당신은 Regex.Split로를 _ 형태에게 그것을 subtract 및 사용할 수 있습니다

Regex.Split(str, @"[\w-[_]]+") 

this regex demo

또는 여기

Regex.Split(str, @"[^\W_]+") 

regex demo

이 발생한다 [^\W_]은 문자가 아닌 문자 (즉, \w)와 일치하지 않고 _이 아닌 문자 (따라서 \w_을 제외하고는 모두 일치합니다).

+0

[온라인 C# 데모] (http://ideone.com/Zdq25a)를 참조하십시오. –

+0

고마워,이게 내가 원하는거야 –

+0

그냥 "+ hello there +"를 시도하지 마라. –

-2
List<string> mylist = new List<string>(); 
    mylist.Add("_+hello[]_"); 
    mylist.Add("_+how||"); 
    mylist.Add("_+are,,"); 
    mylist.Add("||you=_"); 
    mylist.Add("_+doing\"_"); 
    foreach (var item in mylist) 
    { 
     var LastItem=item.ToArray().Last(); 
     var FirstItem = item.ToArray().First(); 
    } 
관련 문제