Nice programing

C # 문자열 분할 및 결합

nicepro 2020. 11. 6. 20:05
반응형

C # 문자열 분할 및 결합


중복 가능성 :
먼저 분할 한 다음 문자열의 하위 집합 결합

문자열을 배열로 분할하고 첫 번째 요소를 꺼내고 (사용) 나머지 배열을 별도의 문자열로 결합하려고합니다.

예:

theString = "Some Very Large String Here"

될 것 :

theArray = [ "Some", "Very", "Large", "String", "Here" ]

그런 다음 변수에 첫 번째 요소를 설정하고 나중에 사용하고 싶습니다.

그런 다음 나머지 배열을 새 문자열로 결합하고 싶습니다.

따라서 다음과 같이됩니다.

firstElem = "Some";
restOfArray = "Very Large String Here"

theArray[0]첫 번째 요소에 사용할 수 있지만 나머지 배열을 새 문자열에 연결하려면 어떻게해야합니까?


string.Splitstring.Join다음을 사용할 수 있습니다 .

string theString = "Some Very Large String Here";
var array = theString.Split(' ');
string firstElem = array.First();
string restOfArray = string.Join(" ", array.Skip(1));

항상 첫 번째 요소 만 분리하려는 경우 다음을 사용할 수 있습니다.

var array = theString.Split(' ', 2);

이렇게하면 가입 할 필요가 없습니다.

string restOfArray = array[1];

음, 여기 내 "답변"이 있습니다. 그것은 String.Split 이 분할 해야하는 많은 항목을 보유하고 있다고 말할 수 있다는 사실을 사용합니다 (다른 답변에서 부족한 것으로 나타났습니다).

string theString = "Some Very Large String Here";
var array = theString.Split(new [] { ' ' }, 2); // return at most 2 parts
// note: be sure to check it's not an empty array
string firstElem = array[0];
// note: be sure to check length first
string restOfArray = array[1];

이것은 Substring다른 방법으로 방법 과 매우 유사합니다 .


문자열을 분할하고 결합 할 수 있지만 하위 문자열을 사용하지 않는 이유는 무엇입니까? 그런 다음 문자열을 5 부분으로 분할하고 다시 결합하는 대신 하나의 분할로 끝납니다. 최종 결과는 동일하지만 부분 문자열은 아마도 조금 더 빠를 것입니다.

string lcStart = "Some Very Large String Here";
int lnSpace = lcStart.IndexOf(' ');

if (lnSpace > -1)
{
    string lcFirst = lcStart.Substring(0, lnSpace);
    string lcRest = lcStart.Substring(lnSpace + 1);
}

참고 URL : https://stackoverflow.com/questions/12961868/split-and-join-c-sharp-string

반응형