Belgelerden aldığım budur: \zs
önceki regex ile eşleştikten sonra \@<=
"vurgulanan kısmı başlatır" ve önceki atom eşleştirildikten sonra "vurgulanan kısmı başlatır" . Ama bunun inceliklerini tam olarak anlayamıyorum, bu yüzden nasıl derinlemesine biraz daha farklı olduklarını açıklayabilir mi?
Beni meraklandıran şey buydu: eğer koşarsam
/\_s\zsnnoremap
yani seçeneğini nnoremap
bir boşluk veya bir başlangıç-of-line öncesinde (yani önceki çizgisinden satır, dolayısıyla \_
önceki s
) daha sonra ve çalıştırın gn
Görsel Mod girmek için görsel seçmek nedense, sonraki eşleşmeyi sadece ilk sütunu (yani ilk n
yılında nnoremap
) seçildiği - tüm olmasına rağmen nnoremap
kelime olduğu vurgulanan ile :hlsearch
döndü.
Ancak, bunun yerine aramayı çalıştırırsam
/\_s\@<=nnoremap
ve sonra deneyin gn
, tüm nnoremap
uygun şekilde seçilir. Burada neler olabilir? Belirsiz bir hata keşfetmeye cesaret ettim mi?
:h patterns
içeride ama hafızam regex'lerin atomlardan oluştuğunu gösteriyor, eğer bu farkı açıklamaya yardımcı oluyorsa.