Я пытаюсь найти совпадение в списке строк, в котором я хочу убедиться, что первый символ не является знаком равенства, не фиксируйте это совпадение. Итак, для списка (взятого из стоп-кадра) вроде:
ply==3.10
powerline-status===2.6.dev9999-git.b-e52754d5c5c6a82238b43a5687a5c4c647c9ebc1-
psutil==4.0.0
ptyprocess==0.5.1
Я хочу, чтобы захваченный вывод выглядел так:
==3.10
==4.0.0
==0.5.1
Сначала я подумал, что использование отрицательного взгляда (?![^=])
будет работать, но с регулярным выражением (?![^=])==[0-9]+.*
оно в конечном итоге захватывает строку, которую я не хочу:
==3.10
==2.6.dev9999-git.b-e52754d5c5c6a82238b43a5687a5c4c647c9ebc1-
==4.0.0
==0.5.1
Я также пытался использовать группу без захвата (?:[^=])
с регулярным выражением (?:[^=])==[0-9]+.*
, но это заканчивалось захватом первого символа, который я тоже не хочу:
y==3.10
l==4.0.0
s==0.5.1
Таким образом, вопрос заключается в следующем: как можно сопоставить, но не захватить строку, перед остальным регулярным выражением?