If I want to get the length of each match within the parentheses in the following regex, how do I do it?:
^\(\-\+\s\)\+
I'm trying to modify the width of columns in a buffer with data that is laid out as a table. Since the first two rows of the table will look like this
DESIGN_ID DESIGN_YEAR SOURCE_REFERENCE
---------- ----------- ----------------
I want to use the regular expression to find the current width of each column.
Well, how do you want to capture it?
This will put it at the beginning of all the matching lines:
:%s/^-\+\%(\s-\+\)*\s\?$/\=strlen(submatch(0)) . ': '. submatch(0)
\= lets you substitute the result of a vimscript expression for a matching string.
submatch(0) is the string matched (submatch(n) would be the nth group).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With