我有一个要放在rails种子上的产品列表,我想用一个命令将括号逐个放在列表中,并将括号放在整个列表中?
例如:
1. Dakine
2. Dale of Norway
3. Dan Post
1. ["Dakine"],
2. ["Dale of Norway"],
3. ["Dan Post"],
我在帮助上搜索但没有找到任何关于。感谢。
答案 0 :(得分:1)
你可以在Vim中录制一个宏并重复它。
如果您在1号,您可以执行以下操作:
qqf a [" Esc $ a"],Esc0jq
说明:
qq
:在寄存器q中开始录制宏
f
:转到第一个空格字符
a
::插入(上面的空格字符)
\["
:插入这些字符
Esc
:恢复正常模式
$
:转到行尾
a
:插入后(行尾)
"],
:插入字符
Esc
:恢复正常模式
0
:跳转到行首
j
:向下一行
如果你有100条这样的行,你可以100@q
来实现你的结果。
答案 1 :(得分:1)
使用vim substitute命令:
:%s/.*/["&"]/
如果您不想对所有行进行操作,请选择要转换的行或记下相关的行号,然后在没有:s/.....
的情况下键入%
。你会看到实际上:'<,'>s
这个范围代表了视觉上选择的行,vim会以可视模式自动添加它。
答案 2 :(得分:0)
在Atom上,您可以启用查找以在搜索中使用正则表达式(搜索字段旁边有一个按钮)
然后,您可以搜索(^.*$)
之类的内容,以便按组分隔每一行,并在“替换”字段中使用["$1"],
。 $1
表示正则表达式匹配的值
然后只需执行全部替换,并在需要时删除列表中的最后一个逗号。