
문자열 myString과 pat이 주어집니다. myString에서 pat이 등장하는 횟수를 return 하는 solution 함수를 완성해 주세요.
myString ≤ 1000pat ≤ 10| myString | pat | result |
|---|---|---|
| "banana" | "ana" | 2 |
| "aaaa" | "aa" | 3 |
입출력 예 #1
입출력 예 #2
function solution(myString, pat) {
const regex = new RegExp(`(?=${pat})`, 'g'); // 겹치는 패턴까지 검색하는 정규표현식
return (myString.match(regex) || []).length;
}
RegExp 객체 생성:(?=${pat})는 패턴이 시작하는 모든 위치를 검색합니다.g 플래그를 사용하여 전체 문자열을 탐색합니다.pat이 "ana"이고 myString이 "banana"라면, 2번과 4번 위치를 모두 탐색합니다.match 메서드:myString.match(regex)는 regex와 매칭되는 모든 시작 위치를 배열로 반환합니다.null을 반환하므로, || []로 빈 배열을 기본값으로 설정합니다.pat이 등장한 횟수를 계산합니다.정규표현식(Regular Expression) 은 문자열에서 특정 패턴을 검색, 매칭, 치환하는데 사용한는 강력한 도구입니다. 간단히 말해 문자열 내에서 특정 규칙을 만족하는 텍스트를 찾아내기 위한 문자열 검색 언어입니다.
정규표현식의 기본 개념