[C#] string 문자열

[C#] string 문자열

string은 C#에서 문자열을 다루기 위해 제공하는 클래스 입니다.

자주 사용하는 함수 및 속성은 아래와 같습니다.

Contains지정된 부분 문자열이 이 문자열 내에서 발생하는지 여부를 나타내는 값을 반환합니다.
Equals이 인스턴스와 지정된 다른 String 개체의 값이 같은지 여부를 확인합니다.
Length현재 String 개체의 문자 수를 가져옵니다.
Replace이 인스턴스에서 지정된 유니코드 문자가 모두 지정된 다른 유니코드 문자로 대체되는 새 문자열을 반환합니다.
Split지정된 구분 문자에 따라 문자열을 부분 문자열로 분할합니다.
Substring이 인스턴스에서 부분 문자열을 검색합니다. 부분 문자열은 지정된 문자 위치에서 시작하며 지정된 길이를 줍니다.
ToLower소문자로 변환된 이 문자열의 복사본을 반환합니다.
ToUpper대문자로 변환된 이 문자열의 복사본을 반환합니다.
Trim현재 문자열에서 선행 및 후행 공백 문자를 모두 제거합니다.
Compare지정된 규칙을 사용하여 지정된 두 String 개체를 비교하고 정렬 순서에서 상대 위치를 나타내는 정수를 반환합니다.
CompareTo이 인스턴스를 지정된 String 개체와 비교하고 이 인스턴스가 지정한 문자열과 정렬 순서의 동일한 위치에 선행, 팔로우 또는 표시되는지 여부를 나타냅니다.
Concat지정된 두 String인스턴스를 연결합니다.
IndexOf이 문자열에서 지정된 유니코드 문자가 처음 나타나는 인덱스(0부터 시작)를 보고합니다.
Insert지정된 문자열이 이 인스턴스의 지정된 인덱스 위치에 삽입되는 새 문자열을 반환합니다.

위 표에 있는 함수 및 속성을 사용한 샘플 코드는 아래와 같습니다.

//"abc" 문자열이 있는지
string txt = tbText.Text;
bool bContains = txt.Contains("abc");
lbContain.Text = "Contain \"abc\": " + bContains;

//"abc" 문자열과 같은지
bool bEqual = txt.Equals("abc");
lbEqual.Text = "Equal \"abc\": " + bEqual;

//길이 반환
int iLength = txt.Length;
lbLength.Text = "Length: " + iLength;

//'a'를 'x'로 변환
string txtReplace = txt.Replace('a', 'x');
lbReplace.Text = "Replace \'a\' to \'b\': " + txt + " to " + txtReplace;

//쉼표(,)를 기준으로 나누기
string[] strSplit = txt.Split(',');
lbSplit.Text = "Split(,): \n";
for (int i = 0; i < strSplit.Length; i++)
{
    lbSplit.Text += string.Format("{0}: {1}\n", i, strSplit[i]);
}

//2번째 인덱스에서 3개 추출하기
if (tbText.Text.Length < 5)
    lbSubstring.Text = "Substring(2, 3): " + "input text least 5word";
else
{
    string txtSubstring = txt.Substring(2, 3);
    lbSubstring.Text = "Substring(2, 3): " + txtSubstring;
}

//소문자로
string strToLower = txt.ToLower();
lbToLower.Text = "ToLower: " + strToLower;

//대문자로
string strToUpper = txt.ToUpper();
lbToUpper.Text = "ToUpper: " + strToUpper;

//양쪽 빈문자열 제거
string strTrim = txt.Trim();
lbTrim.Text = "Trim: " + strTrim;

//"abc" 문자열과 비교, 같으면 0 다르면 -1 또는 1
int iCompare = string.Compare(txt, "abc");
lbCompare.Text = "Compare \"abc\": " + iCompare;

//"abc" 문자열과 비교, 같으면 0 다르면 -1 또는 1
int iCompareTo = txt.CompareTo("abc");
lbCompareTo.Text = "CompareTo \"abc\": " + iCompareTo;

//뒤에 이어 붙이기
string strConcat = string.Concat(txt, "123");
lbConcat.Text = "concat \"123\": " + strConcat;

//문자열 찾기, 찾은 인덱스 반환
int iIndexOf = txt.IndexOf('c');
lbIndexOf.Text = "IndexOf \'c\': : " + iIndexOf;

//1번째 인덱스에 "def" 문자열 삽입
string strInsert = txt.Insert(1, "def");
lbInsert.Text = "Insert \"def\" index 1: " + strInsert;

github : https://github.com/3001ssw/c_sharp/tree/main/string/string_basic

위 코드는 윈폼에서 만들어 졌는데 위 깃헙 링크 참고하시면 됩니다.

실행 결과는 아래와 같습니다.

그 외 string 클래스에 대한 자세한 사항은 아래 링크 참고하시면 됩니다.

msdn: https://learn.microsoft.com/ko-kr/dotnet/api/system.string?view=net-8.0