[c++] 정규 표현식을 활용한 패턴 매칭
정규 표현식(Regular Expression)은 문자열에서 패턴을 찾거나 특정 문자열을 검색하는 데 사용됩니다. C++에서는 <regex> 라이브러리를 통해 정규 표현식을 사용할 수 있습니다.
#include <iostream>
#include <regex>
#include <string>
int main() {
std::string input = "The cat and the hat sat on a mat.";
std::regex pattern("ca.t");
std::smatch matches;
if (std::regex_search(input, matches, pattern)) {
std::cout << "패턴 매칭 결과: " << matches.str() << std::endl;
} else {
std::cout << "패턴 매칭 실패" << std::endl;
}
return 0;
}
위 예제는 “The cat and the hat sat on a mat.” 문자열에서 “ca.t” 패턴을 찾고, 해당하는 문자열을 출력하는 간단한 C++ 프로그램입니다.
정규 표현식을 활용하여 패턴 매칭을 수행할 때, <regex> 라이브러리의 <regex> 클래스와 <smatch> 클래스를 활용하여 매칭 결과를 저장하고 사용할 수 있습니다.
정규 표현식은 문자열 처리에 유용하며, C++에서는 다양한 응용 프로그램에서 이를 활용할 수 있습니다.
결론
정규 표현식은 C++에서 문자열 패턴 매칭을 위한 강력하고 유연한 도구입니다. <regex> 라이브러리를 활용하여 정규 표현식을 쉽게 사용할 수 있으며, 문자열 처리에 효과적으로 활용할 수 있습니다.
참고 문헌:
- C++ <regex> 라이브러리: https://en.cppreference.com/w/cpp/header/regex
-
C++ 정규 표현식 가이드: https://www.cplusplus.com/reference/regex/
- 정규 표현식 위키: https://ko.wikipedia.org/wiki/%EC%A0%95%EA%B7%9C_%ED%91%9C%ED%98%84%EC%8B%9D