Regex 如何检查字符串是否与vim中的模式匹配
我试图写一个折叠表达式,但我无法让正则表达式工作 我要检查的字符串和正则表达式是:Regex 如何检查字符串是否与vim中的模式匹配,regex,vim,Regex,Vim,我试图写一个折叠表达式,但我无法让正则表达式工作 我要检查的字符串和正则表达式是: # -- Heading 1 -- 我使用什么语法进行检查? 我试过:(似乎不起作用) 如果匹配(行“\v regex”)>=0 如果line=~“\v regex”可以使用match()或=~,但regexp是错误的 因为我不知道所有可能的输入,所以有很多猜测,但我想你的意思是: ^.*-\{2}\s\%([_a-zA-Z0-9]\+\s\)\+-\{2}$ 或使用字符类的稍有不同的变体: ^\v.*--
# -- Heading 1 --
我使用什么语法进行检查?
我试过:(似乎不起作用)
如果匹配(行“\v regex”)>=0
如果line=~“\v regex”
可以使用match()
或=~
,但regexp是错误的
因为我不知道所有可能的输入,所以有很多猜测,但我想你的意思是:
^.*-\{2}\s\%([_a-zA-Z0-9]\+\s\)\+-\{2}$
或使用字符类的稍有不同的变体:
^\v.*-- [_[:alnum:][:blank:]]+--$
或者可能使用否定集合(匹配任何字符,但-
):
发狂吧 谢谢。我试过你所有的正则表达式,但它们也不起作用。然后我发现问题是我一直在用双引号把它们括起来。把他们改成单身,他们工作得很好。
^\v.*-- [_[:alnum:][:blank:]]+--$
^\v# -- [^-]+ --$