^[a-zA-Z\-_]+_([\d]+)+\.html можно перефразировать так:
- Шаблон ^[a-zA-Z\-_]+ обозначает, что адрес должен начинаться с одной или более букв (в верхнем или нижнем регистре), тире или подчеркивания.
- [a-zA-Z\-_]+ обозначает, что после начальной части могут идти одна или более букв, тире или подчеркивания.
- (_([\d]+)+) обозначает, что должен быть найден символ "_", за которым идет одна или более цифр.
- \.html указывает, что после цифр должен быть точно такой же текст ".html".
Таким образом, данное правило RewriteRule перенаправляет адреса с определенной структурой на страницу index.php с параметром id равным найденным цифрам.