positive lookahead는 a다음 b가 오도록 한다.
var reg = /a(?=b)/g;
negative lookahead는 a다음 b가 아니도록 한다.
var reg = /a(?!b)/g;
var reg = /(?<=b)a/g;
var reg = /(?<!b)a/g;
example) html 마크업 내부의 text를 얻어올떄
var reg = /(?<=<tag>).*(?=<\/tag>)/m
var matchs = reg.exec('<tag>zxcv</tag>')
console.log(matchs)
example) 긴 숫자 타입에 콤마를 삽입할때 replace 위치 찾을때.
'1259127321420'.replace(/(-?\d)(?=(\d{3})+$)/g, '$1,')
'1259127321420'.replace(/(?=(\d{3})+(?!\d))/g, ',')
group1: capture
group2: character
var reg = /(capture)(character)/m
var matchs = reg.exec('capturecharacter')
console.log(matchs)
group1: character
var reg = /(?:capture)(character)/m
var matchs = reg.exec('capturecharacter')
console.log(matchs)