026. 정규식 도우미
Medium
바이브코딩
MCPRegexText
문제 설명
[문제]
정규식(정규 표현식 — 문자열의 패턴을 기술하는 식)을 다루는 MCP 서버를 구현한다.
[구현할 함수]
- test_regex(pattern: str) -> bool
주어진 패턴이 유효한(컴파일 가능한) 정규식이면 True, 컴파일에 실패하면 False를 반환한다.
- extract_matches(pattern: str, text: str) -> List[str]
텍스트에서 패턴에 매치되는 모든 부분 문자열을 등장 순서대로 배열로 반환한다. 매치가 없으면 빈 배열.
- replace_pattern(pattern: str, replacement: str, text: str) -> str
텍스트에서 패턴에 매치되는 모든 부분을 replacement로 치환한 문자열을 반환한다.
[제약]
- 잘못된 정규식이 들어오면 test_regex는 예외 없이 False를 반환해야 한다.
[힌트] 정규식 라이브러리 사용 — 전체 매치 추출, 치환, 컴파일 유효성 검사 기능 (Python: re의 findall/sub/compile / C++: <regex> / Java: java.util.regex).
[예시]
test_regex("^[a-zA-Z0-9]+$") -> True
test_regex("[invalid") -> False # 경계: 컴파일 실패
extract_matches("\\d+", "내 번호 010-1234-5678") -> ["010", "1234", "5678"]
replace_pattern("정규식", "regex", "정규식 도우미") -> "regex 도우미"
로그인하고 풀기
AI가 자동 채점하고 즉시 정답·해설을 알려줘요. 무료.