Uzyskaj indeks każdego przechwycenia w wyrażeniu regularnym JavaScript
Chcę dopasować wyrażenie regularne/(a).(b)(c.)d/
z"aabccde"
i uzyskaj następujące informacje:
"a" at index = 0
"b" at index = 2
"cc" at index = 3
Jak mogę to zrobić? String.match zwraca listę dopasowań i indeks początku pełnego dopasowania, a nie indeks każdego przechwycenia.
Edycja: przypadek testowy, który nie działałby ze zwykłym indexOf
regex: /(a).(.)/
string: "aaa"
expected result: "a" at 0, "a" at 2
Uwaga: pytanie jest podobne doRegex Javascript: Jak znaleźć indeks każdego podwyrażenia?, ale nie mogę modyfikować wyrażenia regularnego, aby każde podwyrażenie było grupą przechwytującą.