Safari에서는 정규표현식의 후방탐색(lookbehind, ?<=, ?<!)을 지원하지 않는다. 만약 정규표현식에 후방탐색이 포함되어 있다면 콘솔에 Invalid regular expression: invalid group specifier name가 뜨며 에러가 발생한다.
정규표현식에서 후방탐색을 대체하는 방법은 상황에 따라 다르겠지만 capturing group을 활용하면 아래와 같은 정규표현식에서 후방탐색을 대체할 수 있다.
const str = 'string.001';
const number = str.match(/(?<=\.)\d+/)[0]; // '001'
const str = 'string.001';
const number = str.match(/\.(\d+)/)[1]; // '001'
(2023년 2월 23일 추가)
'IT > JavaScript' 카테고리의 다른 글
[ESLint] import/order 규칙으로 import 순서 미세 조정하기 (0) | 2023.01.15 |
---|---|
[JS] 자바스크립트로 엑셀 파일(xlsx) 만들어서 다운받기 (0) | 2022.08.05 |
[JS] Selection API로 선택된 텍스트 정보 가져오기 (0) | 2022.06.01 |
[JS] 자바스크립트의 배열 생성 방법 (0) | 2021.07.29 |
[JS] 함수의 매개변수와 RangeError (0) | 2021.07.23 |