[c++] C++에서의 정규 표현식과 유닛 테스트
C++에서 정규 표현식과 유닛 테스트를 사용하여 문자열 패턴 매칭을 테스트하는 방법에 대해 알아보겠습니다.
정규 표현식 사용하기
C++11 이상에서는 <regex>
헤더를 사용하여 정규 표현식을 다룰 수 있습니다. 다음은 간단한 예제입니다.
#include <iostream>
#include <regex>
#include <string>
int main() {
std::string s = "Hello, C++ regex!";
std::regex pattern("C\\+\\+");
if (std::regex_search(s, pattern)) {
std::cout << "정규 표현식이 매칭됐습니다." << std::endl;
}
return 0;
}
위의 예제는 문자열 s
에서 C++
패턴이 매칭되는지 확인하는 방법을 보여줍니다.
유닛 테스트 작성하기
유닛 테스트를 작성하기 위해 보통 Google Test 라이브러리를 사용합니다. 이를 위해 먼저 Google Test를 프로젝트에 추가해야 합니다.
#include <gtest/gtest.h>
TEST(RegexTest, SimpleMatch) {
std::string s = "Testing regex in C++";
std::regex pattern("C\\+\\+");
ASSERT_TRUE(std::regex_search(s, pattern));
}
위의 예제는 문자열 s
에서 C++
패턴이 매칭되는지 테스트합니다.
마무리
C++에서 정규 표현식을 사용하여 문자열 패턴을 매칭하고, Google Test를 사용하여 유닛 테스트를 작성하는 방법에 대해 알아보았습니다. 이러한 기능들을 사용하여 안정적이고 견고한 프로그램을 개발할 수 있습니다.
참고문헌: