vim替代功能don';I don’我不能和操作员一起工作
使用vim替代功能don';I don’我不能和操作员一起工作,vim,substitution,Vim,Substitution,使用:echo-substitute(“abc”、“a\|d”、“e”和“”)命令,我想得到类似ebc的答案。但答案仍然是abc。当我使用:s/a\| d/e/替换文本时,我可以得到ebc。我想知道原因。字符串文字有自己的反斜杠转义(请参见:help expr quote),因此您需要将反斜杠加倍,以便其中一个能够通过regexp解析器。字符串文字有自己的反斜杠转义(请参见:help expr quote)因此,您需要将反斜杠加倍,以便其中一个可以进入regexp解析器。这是一条注释,但很难格式
:echo-substitute(“abc”、“a\|d”、“e”和“”)
命令,我想得到类似ebc
的答案。但答案仍然是abc。当我使用:s/a\| d/e/
替换文本时,我可以得到ebc
。我想知道原因。字符串文字有自己的反斜杠转义(请参见:help expr quote
),因此您需要将反斜杠加倍,以便其中一个能够通过regexp解析器。字符串文字有自己的反斜杠转义(请参见:help expr quote
)因此,您需要将反斜杠加倍,以便其中一个可以进入regexp解析器。这是一条注释,但很难格式化长注释(抱歉):)
报价问题总是一场噩梦
为了减少它,您可以使用“单引号”字符串\cite(@peterRinker等人)和非常神奇的
(\v
)修饰符(无需转义+|()和其他运算符)
例如:
:echo substitute("Name Surname",'\v(\w)\w+ (\w+)','\2, \1',"")
--姓氏,N这是一条评论,但很难格式化长评论(抱歉):) 报价问题总是一场噩梦 为了减少它,您可以使用“单引号”字符串\cite(@peterRinker等人)和非常神奇的 (
\v
)修饰符(无需转义+|()和其他运算符)
例如:
:echo substitute("Name Surname",'\v(\w)\w+ (\w+)','\2, \1',"")
--姓氏,N最好对正则表达式模式使用单引号。例如,
替换('abc'、'a\|d'、'E'、'')
。此外,使用字符类也比交替使用要好。例如,[ad]
最好对正则表达式模式使用单引号。例如,替换('abc'、'a\|d'、'E'、'')
。此外,使用字符类也比交替使用要好。例如,[ad]