C#

문자열(string) 처리 기능 및 메서드

잼잼재미 2023. 11. 6. 15:52

문자열 생성


string str1 = "Hello World";
string str2 = new string('H', 5); // 문자 'H'를 5개로 구성된 문자열 생성

Console.WriteLine(str1);	// Hello World 출력

Console.WriteLine(str1[2]);	// l 출력
							// string 배열과 별개로, str1[i] 번째의 문자를 출력

 


연결


string str1 = "Hello";
string str2 = "World";
string str3 = str1 + str2; // str3 = "Hello World";

 

 

글자 수 (Length)


string test = "abcd efg";
 
//Length : 글자 길이
int size = test.Length; //8
Console.WriteLine("size : " + size);

 


분할 (Split)


 - 문자열을 분할하여 배열 생성

string str = "Hello, World!";
string[] words = str.Split(','); // 쉼표로 구분하여 분할한 문자열 배열 words 생성

 

 

문자열 자르기 (Substring)


 - 문자열을 특정 위치에서 원하는 길이만큼 잘라서 문자열 생성

string str = "Hello, World";

string str1 = str.Substring(0, 5);	// 0번째 숫자부터, 5글자 자름
string str2 = str.Substring(7, 5);
string str3 = str.Substring(7);	// 7번째 숫자부터, 끝까지 자름

Console.WriteLine(str1);	// Hello 출력
Console.WriteLine(str2);	// World 출력
Console.WriteLine(str3);	// World 출력

 


검색 (IndexOf)



 - 문자의 시작위치를 가져옴

 - 없는 문자라면, -1 반환

 - Char 형식도 대입 가능

string str = "Hello, World!";

int index = str.IndexOf("World"); // index = 7;
int index = str.IndexOf("H");	// index = 0;
int index = str.IndexOf('e');	// index = 1;
int index = str.IndexOf('Z');	// index = -1;

 

 

LastIndexOf

  • 뒤에서 가장 가까운 문자의 순서를 가져옴
  • 없는 문자라면, -1 반환
string str = "Hello World!";
char searchChar = 'o';
int lastIndex = str.LastIndexOf(searchChar);	// 7 출력

 


대체 (Replace)



 - 첫번째 문자열을 두번째 문자열로 대체한 새로운 문자열 생성

string str = "Hello, World!";
string newStr = str.Replace("World", "Universe"); // newStr = "Hello, Universe";

 


변환



 문자열을 숫자로 변환 (Parse)


string str = "123";
int num = int.Parse(str);

 


숫자를 문자열로 변환 (ToString)


int num 123;
string str = num.ToString();

 

 

문자열을 숫자인지 확인하고 숫자로 변환 (TryParse)


bool answer = false; 
string = "1234";
int x;
answer = int.TryParse(s, out x);

// answer = true;
// x = 1234;

 


비교



 문자열 값 비교


 - str1 문자열과 str2 문자열을 비교한 후, isEqual 변수에 그 결과 저장

string str1 = "Hello";
string str2 = "World";
bool isEqual = str1 == str2; // bool = false;

 


문자열 대소 비교 (Compare)


 - str1 문자열과 str2 문자열을 대소 비교 후, compare 변수에 결과 저장

string str1 = "Apple";
string str2 = "Banana";
int compare = string.Compare(str1, str2); // compare < 0

 * compare 변수가 0보다 작으면 str1 < str2
   compare 변수가 0이면 str1 == str2
   compare 변수가 0보다 크면 str1 > str2

 * 사전에 뒤에 나올수록 높은 숫자

   소문자가 대문자보다 높은 숫자

 


포멧팅


 - name 변수와 age 변수의 값을 문자열 message에 삽입


 문자열 형식화 (Format)


string name = "John";
int age = 30;
string message = string.Format("My name is {0} and I'm {1} years old.", name, age);

 


 문자열 보간


string name = "John";
int age = 30;
string message = $"My name is {name} and I'm {age} years old";

 

 

대/소문자 변환


대문자 변환 (ToUpper)


string s = "hello";
s = s.ToUpper();
Console.WriteLine(s);      
// HELLO 출력

 

 

소문자 변환 (ToLower)


string s = "HELLO";
s = s.ToLower();
Console.WriteLine(s);
// hello 출력

 

 

한글자만 변환


string s = "hello";
Console.WriteLine(s[2].ToString().ToUpper());	// 3번째 글자 대문자 변환
// L 출력

'C#' 카테고리의 다른 글

3항 연산자  (0) 2023.11.06
디버깅(Debugging) 방법  (0) 2023.11.06
var  (0) 2023.11.06
이스케이프 시퀸스 (Escape Sequence)  (0) 2023.11.06
C#의 특징  (0) 2023.11.06