Не жадный оператор не означает самое короткое совпадение:
abcabk
a.+?k
будет соответствовать всей строке (в этом примере) вместо только трех последних знаков.
Вместо этого я бы хотел найти наименьшее возможное совпадение.
Это последнее возможное совпадение для 'a
', чтобы разрешить все совпадения для k
.
Полагаю, единственный способ сделать это - использовать выражение вроде:
a[^a]+?k