JavaScript 정규식의 전역 matchAll
matchAll 메서드는 모든 일치 항목을
이터러블 객체 형태로 반환합니다.
각 요소는
찾은 항목과 그룹(캡처 그룹)을 포함하는 배열입니다.
이 메서드는 g 수정자와 함께만 호출할 수 있습니다.
예제를 통해 살펴보겠습니다. 다음 문자열이 있다고 가정해 봅시다:
let str = '12 34 56';
모든 숫자 쌍을 찾고 그 숫자들을 그룹(캡처 그룹)으로 분리해 보겠습니다:
let matches = str.matchAll(/(\d)(\d)/g);
얻은 이터러블 객체를 반복문으로 순회하며 찾은 일치 항목을 출력해 보겠습니다:
for (let match of matches) {
console.log(match); // [12, 1, 2], [34, 3, 4], [56, 5, 6]
}
다음 문자열이 주어졌습니다:
let str = '12:37 15:48 17:59';
이 문자열에서 시간을 나타내는 모든 하위 문자열을 찾고, 각각에 대해 시와 분을 그룹(캡처 그룹)으로 분리하세요.
문자열이 주어졌습니다:
let str = 'site.ru sss site.com zzz site.net';
이 문자열에서 도메인 이름 배열을 얻으세요. 배열의 각 요소에서 도메인 이름과 도메인 존(확장자)을 서로 다른 그룹(캡처 그룹)에 넣으세요.