我可以毫无问题地搜索正则表达式,例如
/["']
但在if语句中它失败了,例如
:let c = "w"
:if c !~ ["']
:echo "OK"
:endif
产生这些错误消息
E114:缺少引语:“']
E15:表达式无效:c!〜[“']
我用不同的方式尝试过它,带有反斜杠,单引号和双引号以及'非常神奇',但我得到的只是错误信息的变化。我该如何写这个'if'语句?
答案 0 :(得分:1)
你应该使用正则表达式作为字符串,尝试
:if c!~"[\"']"
答案 1 :(得分:0)
我个人在使用Vim搜索[
和反对]
时遇到了一些问题。通常情况下,您可以独立搜索任何一个而没有任何问题,但是当您将两者结合在一起时,它们需要被转义。
所以,试试这个:\["'\]
并查看是否有效。