If your goal is to look for column positions greater than 3 and less than 8, you do not need points or stars, this is enough:
/\%>3\%<8
If you are wondering about the unintuitive behavior of adding dots and / or stars to your search, then yes, this is confusing. I believe that in this case the star is superfluous. You can get the same behavior that you see (numbers 4-6 are found) simply by doing a search:
/ \%> 3 \% <8.
I believe that a point is considered a restrictive search criterion. In other words, there must be a char extending the position of the column. Thus, the search procedure works something like this: is there a column position 4 with a character in the 5th position? yes, add it to the result; is there a column position 6 with char at position 7? yes add it; is there a column position of 7 with char in eighth position? No - because criteria of zero width do not include 8th position or higher (\% <8). To turn char into an eight-position position, you can add another point after 8c and then find 4-7, for example:
/\%3c.\%<8c.
But, mind you, this just brings us back to my first example:
/\%>3\%<8 <=> /\%3c.\%<8c.
source share