[c++] std::regex library
C++의 std::regex
라이브러리는 정규 표현식을 사용하여 문자열을 패턴 매칭하는 데 사용됩니다. 이 라이브러리는 C++11 이상의 표준을 따르는 컴파일러에서 사용할 수 있습니다.
기본적인 사용법
std::regex
를 사용하여 문자열의 패턴을 매칭하려면 다음과 같은 단계를 따릅니다.
std::regex
객체를 생성합니다.- 패턴을 사용하여 문자열 검색을 수행합니다.
이를 아래의 예제를 통해 살펴봅시다.
#include <iostream>
#include <string>
#include <regex>
int main() {
std::string str = "Hello, World!";
std::regex pattern("world", std::regex_constants::icase); // 대소문자 구분 없이 매칭
if (std::regex_search(str, pattern)) {
std::cout << "Pattern found!" << std::endl;
} else {
std::cout << "Pattern not found!" << std::endl;
}
return 0;
}
위 코드는 “Hello, World!” 문자열에서 “world” 패턴을 대소문자를 구분하지 않고 찾는 예제입니다.
패턴 매칭 옵션
std::regex
라이브러리에서는 다양한 패턴 매칭 옵션을 제공합니다. 예를 들어, 대소문자를 구분하지 않는 매칭(std::regex_constants::icase
)과 여러 행에 걸친 매칭(std::regex_constants::multiline
) 등이 있습니다. 이를 통해 보다 유연하고 정확한 패턴 매칭을 수행할 수 있습니다.
결론
std::regex
라이브러리는 C++에서 강력한 문자열 패턴 매칭 기능을 제공하며, 복잡한 패턴을 간단히 매칭할 수 있는 유용한 도구입니다.
더 많은 정보는 cppreference.com에서 확인할 수 있습니다.