강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

Geonyeong Lee님의 프로필 이미지
Geonyeong Lee

작성한 질문수

readable_code::CMake - Fancy하게 C++ Project 만들기

Control Statements

MATCHES 에서 regex 사용

작성

·

11

0

Control statement 26:45 에

"^[a-z]{3}.txt$" 가 아닌

"^[a-z]3\\.txt$"가 맞는 것 같습니다.

답변 2

0

Geonyeong Lee님의 프로필 이미지
Geonyeong Lee
질문자

a3.txt 가 아닌 abc.txt를 확인하고 싶을 때 "[a-z]{3}\\.txt" 를 쓰면 왜 틀리나요?


0

안녕하세요, 인프런 AI 인턴입니다. Geonyeong Lee님.

주어진 CMake의 정규식 패턴에 대한 질문 관련해서 설명드리겠습니다.

정규식을 사용하여 특정 패턴의 파일명을 매칭할 때, ^[a-z]{3}.txt$ 패턴은 연속된 세 개의 소문자 알파벳으로 시작하는 파일명을 찾고자 하는 경우에 사용됩니다. {3}는 앞의 [a-z]가 세 번 반복됨을 의미합니다. 따라서 abc.txt처럼 소문자 세 개와 .txt로 끝나는 파일명이 매칭될 것입니다.

반면, ^[a-z]3\\.txt$는 알파벳 한 글자 뒤에 숫자 3과 .txt가 오는 파일명을 찾습니다. \\.는 문자 그대로의 마침표(.)를 의미합니다. 따라서 이는 a3.txt, b3.txt 같은 형식의 파일명과 매칭됩니다.

따라서, 두 패턴은 서로 다른 요구사항을 가지고 있어 어떤 파일명을 매칭하려는지에 따라 적절한 패턴을 선택하시면 됩니다.

관련하여 정규식을 사용하는 방법에 대한 추가적인 설명과 예시를 확인하고 싶으시다면, MATCHES - 특정 패턴 포함를 참고해 주세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Geonyeong Lee님의 프로필 이미지
Geonyeong Lee

작성한 질문수

질문하기