On Mon, July 29, 2013 16:14, Dimitar DIMITROV wrote:
>> >> Hi all,
>> >>
>> >> Not sure why /\_.* matches at every line Vs only once...
>> >> I would expect a single match at start of file because \_. matches
>> any
>> >> char including end of line and * is greedy
>> >> /pattern\_.* does what I expect: it matches from pattern to end of
>> file
>> >>
>> >> Dimitar
>> >
>> > An update/clarification on this:
>> >
>> > :%s/\_.* does correctly erase the whole file. What is actually
>> incorrect
>> > and I
>> > didn't explain it well in my above statement is the behaviour of n, N.
>> /,
>> > :/
>> > So, n goes to every line Vs stay at the first byte of the file and
>> never
>> > move
>>
>> I think this is correct. \_.* doesn't say, Vim should start matching
>> only
>> at the start of the file, so Vim will try matching at each line again.
>
> I disagree, following your logic, after /lorem\_.*ipsum and the following
> file:
>
> lorem
> ipsum
>
> n would move us to both lines which is not correct

Of course not. the lorem part doesn't match at the next line (ipsum).

Try this example:

aann
nnbb

and search for
/n\_[n]*

hitting n will move you to the next line.


regards,
Christian

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Raspunde prin e-mail lui