C#에서는 Contains() 메서드를 사용하여 하나의 문자열 안에 특정 부분 문자열(Substring)이 포함되어 있는지 손쉽게 확인할 수 있습니다. 이 메서드는 지정한 부분 문자열이 존재하면 true, 존재하지 않으면 false를 반환합니다.
1. 문자열 준비하기
먼저 확인할 대상 문자열을 선언합니다.
string s = "Tom Cruise";
2. Contains() 메서드로 부분 문자열 찾기
이제 문자열에서 "Tom"이라는 부분 문자열이 있는지 확인해 보겠습니다.
if (s.Contains("Tom") == true) {
Console.WriteLine("부분 문자열을 찾았습니다!");
}전체 예제 코드
다음은 문자열에서 부분 문자열을 찾는 전체 과정을 담은 완성된 예제입니다.
using System;
public class Demo {
public static void Main() {
string s = "Tom Cruise";
if (s.Contains("Tom") == true) {
Console.WriteLine("부분 문자열을 찾았습니다!");
} else {
Console.WriteLine("부분 문자열을 찾지 못했습니다!");
}
}
}실행 결과
부분 문자열을 찾았습니다!
추가 팁
- 대소문자 구분 없이 검색: 기본적으로 Contains()는 대소문자를 구분합니다. 대소문자를 무시하고 싶다면
s.ToLower().Contains("tom")처럼 변환 후 비교하거나, .NET 5 이상에서는s.Contains("Tom", StringComparison.OrdinalIgnoreCase)를 사용할 수 있습니다. - 위치 정보가 필요한 경우: 부분 문자열의 시작 위치(인덱스)까지 알고 싶다면
IndexOf()메서드를 활용하세요. 찾지 못하면 -1을 반환합니다. - null 주의: 문자열이 null인 경우
NullReferenceException이 발생할 수 있으므로 사전에 null 여부를 확인하는 것이 좋습니다.