如何在“。”时使用Vim split()。作为模式

时间:2018-04-02 20:53:04

标签: string vim split vi

我正在尝试编写一个Vim脚本,我需要将输入拆分为:

pip --version

"expr.expr"

"."

预期输出为:using split("expr.expr", ".") 但实际输出是:[]

使用其他内容更改['expr' , 'expr'],例如".",但我需要将其作为","

1 个答案:

答案 0 :(得分:3)

你需要逃避.,否则你会分裂模式.,即“'任何'”,从而产生一个空数组。
请改用split("expr.expr", '\.')

您可以在:help literal-string中看到单引号和双引号之间的区别:

Single quoted strings are useful for patterns, so that backslashes do not need
to be doubled.  These two commands are equivalent:
    if a =~ "\\s*"
    if a =~ '\s*'