상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - C#에서 문자열을 다루는 방법은?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
C 에서 문자열을 다루는 방법은 매우 다양하고 강력합니다. 문자열은 C 에서 `string` 타입으로 표현되며, 이는 <a href='https://sangseek.com/sangseeks/불변/ko'>불변</a>(immutable) 객체입니다. 즉, 문자열을 수정할 수는 없지만, 수정된 새로운 문자열을 생성할 수 있습니다. 아래에서는 C 에서 문자열을 다루는 다양한 방법과 관련된 기능들을 자세히 설명하겠습니다. 1. 문자열 생성 C 에서 문자열을 생성하는 방법은 여러 가지가 있습니다. ```csharp string str1 = "Hello, World!"; string str2 = new string('A', 5); // "AAAAA" string str3 = string.Concat("Hello", " ", "World!"); // "Hello World!" ``` 2. 문자열 연결 문자열을 연결하는 방법은 여러 가지가 있습니다. - `+` 연산자 : 문자열을 간단히 연결할 수 있습니다. ```csharp string firstName = "John"; string lastName = "Doe"; string fullName = firstName + " " + lastName; // "John Doe" ``` - `String.Concat` 메서드 : 여러 문자열을 연결할 수 있습니다. ```csharp string fullName = string.Concat(firstName, " ", lastName); ``` - `StringBuilder` 클래스 : 많은 문자열을 반복적으로 연결해야 할 때 성능을 고려하여 사용합니다. ```csharp StringBuilder sb = new StringBuilder(); sb.Append("Hello"); sb.Append(", "); sb.Append("World!"); string result = sb.ToString(); // "Hello, World!" ``` 3. 문자열 포맷팅 C 에서는 문자열을 포맷팅하는 다양한 방법이 있습니다. - `String.Format` 메서드 : 문자열에 변수를 삽입할 수 있습니다. ```csharp string name = "John"; int age = 30; string formattedString = string.Format("My name is {0} and I am {1} years old.", name, age); ``` - 문자열 보간(String Interpolation) : C 6.0부터 도입된 기능으로, `$` 기호를 사용하여 문자열을 쉽게 포맷할 수 있습니다. ```csharp string formattedString = $"My name is {name} and I am {age} years old."; ``` 4. 문자열 조작 문자열을 조작하는 다양한 메서드가 제공됩니다. - Substring : 문자열의 일부를 추출합니다. ```csharp string str = "Hello, World!"; string subStr = str.Substring(7, 5); // "World" ``` - IndexOf : 특정 문자의 인덱스를 찾습니다. ```csharp int index = str.IndexOf("World"); // 7 ``` - Replace : 문자열 내의 특정 부분을 다른 문자열로 교체합니다. ```csharp string newStr = str.Replace("World", "C "); // "Hello, C !" ``` - ToUpper/ToLower : 문자열의 대소문자를 변환합니다. ```csharp string upperStr = str.ToUpper(); // "HELLO, WORLD!" string lowerStr = str.ToLower(); // "hello, world!" ``` 5. 문자열 비교 문자열을 비교하는 방법도 다양합니다. - Equals : 두 문자열이 같은지 비교합니다. ```csharp bool isEqual = string.Equals("hello", "hello", StringComparison.OrdinalIgnoreCase); // true ``` - Compare : 두 문자열을 비교하여 정렬 순서를 결정합니다. ```csharp int comparison = string.Compare("apple", "banana"); // -1 (apple이 banana보다 작음) ``` 6. 문자열 분할 문자열을 특정 구분자로 분할할 수 있습니다. ```csharp string csv = "apple,banana,cherry"; string[] fruits = csv.Split(','); // ["apple", "banana", "cherry"] ``` 7. 문자열 검사 문자열이 비어 있는지 또는 null인지 확인할 수 있습니다. ```csharp string emptyStr = ""; bool isNullOrEmpty = string.IsNullOrEmpty(emptyStr); // true ``` 8. 정규 표현식 C 에서는 `System.Text.RegularExpressions` 네임스페이스를 사용하여 정규 표현식을 통해 문자열을 검색하고 조작할 수 있습니다. ```csharp using System.Text.RegularExpressions; string input = "The quick brown fox jumps over the lazy dog."; Match match = Regex.Match(input, @"\bfox\b"); if (match.Success) { Console.WriteLine("Found: " + match.Value); // "Found: fox" } ``` 9. 문자열 성능 최적화 문자열은 불변 객체이므로, 많은 문자열 조작을 수행할 경우 성능 문제가 발생할 수 있습니다. 이럴 때는 `StringBuilder`를 사용하는 것이 좋습니다. `StringBuilder`는 내부적으로 가변적인 문자열을 관리하여 성능을 향상시킵니다. 결론 C 에서 문자열을 다루는 방법은 매우 다양하며, 이를 통해 문자열을 생성, 조작, 비교, 포맷팅, 검사하는 등 다양한 작업을 수행할 수 있습니다. 이러한 기능들을 적절히 활용하면 효율적이고 가독성 높은 코드를 작성할 수 있습니다. C 의 문자열 처리 기능을 잘 이해하고 활용하면, 애플리케이션의 성능과 유지보수성을 크게 향상시킬 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기