我希望找到所有行中第78列(即行上的第78个字符)不是空格的情况。
理想情况下,我希望像普通搜索一样使用它。
你可以使用这种模式:
\%78c\S
\%78c
匹配在第78列的位置(实际上,该列是字节号,因此对于多字节字符来说并不完全正确)。使用 \%78v
来匹配虚拟列。\S
匹配非空格字符。\%{number}c
的需求。这里的列指“从换行符偏移的字节”,除非您的文本是ASCII或某些8位编码,否则您不需要考虑字节偏移量。 - ZyX\%{number}c
插件来生成颜色表,我可以肯定的是字节偏移量、虚拟列和字符计数具有相同的值(所有字符-空格)。 - ZyX我猜你不需要@kev或者你所建议的:虽然你正确地找到了第78个字符(字符和附加符号算作一个),而且@kev也正确地找到了第78个字节,但看起来你正在解决类似于“超过第78列边界的文本”的问题。如果我的假设是正确的,那么你应该使用
\%78v\S
(\%{number}v
匹配虚拟(屏幕)列)。如果不是,最好使用你的答案,在除了一些生成的模式之外,我从来没有看到过使用 \%{number}c
的必要性。
我找到了解决方法,以下是一个例子,以防有人将来尝试这样做:
如果我想匹配第“n”列,我只需要匹配第“n-1”列的任何内容,然后执行我的第n列的条件。以下表达式查找所有具有第35列不等于空格的行。
^.\{34}[^ ]