I want match spaces at the beginning of lines in Vim
PseudoCode of what I want to do
^( )*
I know the following fr
If you're looking to match any sort of whitespace (be it space or tab) the following regex is applicable
^[\s]*
^ matches the beginning of the line
[\s] / [\t] matches space or tab character (both seem to work, though according to the vim documentation you should use [\s]
* provides repetition, 0 or more.
of course using the / to search as mentioned by others.
If I understand correctly..
/ * will match 0 or more spaces
/ {0,n} will match 0 to n spaces (where n is a number)
To match 1 or more space starting from the beginning of the line:
/^ \+
I think you can really do is match spaces until some kind of non-space character, right? Try this:
^\( \+\)
Or, for any kind of whitespace:
^\(\s\+\)
In Vim regex (, ) and + need to be escaped. Also, if you planning to use backreference, the syntax is \1 (the first group, for example) and not $1 like Perl.
/ * matches zero or more spaces.
Example:
/foo *bar will match foobar, foo bar, foo bar,etcetera`.
Note that if you want to use parenthesis like in your example then you need to escape them with a \\. Vim expressions are not standard Perl regular expressions nor POSIX regular expressions. You example would be:
\\( \\)*
Typing
/^ \+
In command mode will match one or more space characters at the beginning of a line.
Typing
/^\s\+
In command mode will match one or more whitespace characters (tabs etc. as well as spaces) at the beginning of a line.
To match spaces or tabs from the beginning of the line, you can also use: ^\s*.