reuse regular patterns online one negative look expressions example around regex vim

regular - Vim positive lookahead regex



regex perl online (1)

Si revisas la ayuda de vim, no hay mucho que explicar: ( :h /@= )

/@= Matches the preceding atom with zero width. {not in Vi} Like "(?=pattern)" in Perl. Example matches foo/(bar/)/@= "foo" in "foobar" foo/(bar/)/@=foo nothing

Esto debería coincidir con la última identificación:

/id/(_/d$/)/@=

guarda algunas barras invertidas con "muy mágico":

//vid(_/d$)@=

en realidad, parece más sencillo usar vim''s /zs /ze :

id/ze_/d$

Todavía no estoy tan acostumbrado a la sintaxis de vim regex. Tengo este código:

rename_column :keywords, :textline_two_id_4, :textline_two_id_4

Me gustaría hacer coincidir la última identificación con una anticipación positiva en la sintaxis de expresiones regex de VIM.

¿Cómo harías esto?

/id@=_/d$

Esto no funciona.

Esta sintaxis perl funciona:

id(?=_/d$)

Editar - la respuesta:

/id/(_/d$/)/@=

¿Alguien puede explicar la sintaxis?