JavaScript 정규식에서 lastIndex 속성
정규식에는
lastIndex 속성이 있습니다. 이 속성에는 다음
exec 메서드 호출이 검색을 시작할
위치가 포함되어 있습니다.
즉, 메서드를 새로 호출할 때마다
이 속성의 값이 변경됩니다.
예제를 통해 살펴보겠습니다:
let str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // 초기값 0
let res;
while (res = reg.exec(str)) {
console.log(res); // [12], [34], [56]
console.log(reg.lastIndex); // 2, 5, 8
}
lastIndex의 장점은 이 값을
읽을 수 있을 뿐만 아니라 변경하여
지정된 위치에서 검색을 시작할 수 있다는
점입니다. 다음 예제를 보세요:
let str = '12 34 56';
let reg = /\d+/g;
reg.lastIndex = 2;
let res = reg.exec(str)
console.log(res); // [34]
다음 문자열이 주어졌습니다:
let str = '12:37 15:48 17:59';
다섯 번째 문자부터 시작하여 문자열 안의 모든 시간 형식의 부분 문자열을 찾으세요.