• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

정규 표현식 질문

24.07.03 10:57 작성 조회수 33

0

안녕하세요 저번 개츠비 강의 너무 맘에 들어서 후속 강의도 거의 나오자마자 지른 수강생입니다!

열심히 따라하면서 강의 진행하던 와중에 "게시글 렌더링 커스터마이징하기(2)" 강의 안 코드 블럭 메타데이터 파싱 기능 개발하기 파트에서 CODE_METADATA_REGEX 부분 정규표현식에 대해서 질문드립니다

본문에 const CODE_METADATA_REGEX = /^language::(\\w+)/
이런 식으로 정규표현식이 작성되어서 따라 진행했는데 자꾸 정규표현식을 인식 못하는거 같아
/^language::(\w+)/

위와 같이 문법을 고쳐 사용했는데 오타인가 여쭤봅니다

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.07.05

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

질문 주신 정규 표현식과 관련해 직접적으로 담긴 정보는 없습니다만, 정규 표현식에서 \w는 알파벳, 숫자, 밑줄 문자를 의미하며, 이를 그룹화하기 위해 괄호를 사용합니다. /^language::(\w+)/의 경우, 문장의 시작에서 ‘language::’ 다음에 나오는 연속된 알파벳이나 숫자, 밑줄 문자를 매치하는 정규 표현식입니다.

원래 코드 내에 constCODE_METADATA_REGEX = /^language::(\\w+)/로 작성되어 있었다면, 이는 오타일 가능성이 높습니다. JavaScript에서 문자열 내에서 백슬래시(\)를 사용하려면, 이스케이프 처리를 위해 \\를 사용해야 합니다. 그러나 정규 표현식 리터럴에서는 한 번만 사용해도 충분하므로, /^language::(\w+)/가 정확한 문법이 됩니다.

따라서, 정규 표현식을 /^language::(\w+)/로 수정하여 사용한 것은 올바른 조치였습니다. 강의 내용 중 오타가 있었던 것 같으니 강의 제공자나 관련 지원 팀에 정정을 요청해 보시는 것도 좋겠습니다.

채널톡 아이콘