[c++] std::regex library

C++의 std::regex 라이브러리는 정규 표현식을 사용하여 문자열을 패턴 매칭하는 데 사용됩니다. 이 라이브러리는 C++11 이상의 표준을 따르는 컴파일러에서 사용할 수 있습니다.

기본적인 사용법

std::regex를 사용하여 문자열의 패턴을 매칭하려면 다음과 같은 단계를 따릅니다.

  1. std::regex 객체를 생성합니다.
  2. 패턴을 사용하여 문자열 검색을 수행합니다.

이를 아래의 예제를 통해 살펴봅시다.

#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에서 확인할 수 있습니다.