gpt4 book ai didi

r - 每行第一个字加上双引号

转载 作者:行者123 更新时间:2023-12-04 11:44:04 26 4
gpt4 key购买 nike

我有一个结果的 R 文件,如下所示:

filename totalvar result runtime
file1 100 0 20.45
file2 400 4 4.50
...
filen 200 1 2.00

有些文件名包含奇怪的字符,因此我必须为其添加引号。使用 VIM 为每行的第一个单词添加引号的最简单方法是什么?有点像

filename totalvar result runtime
"file1" 100 0 20.45
"file2" 400 4 4.50
...
"filen" 200 1 2.00

最佳答案

使用 :substitute 命令并通过一系列非空白字符匹配第一个单词:

:2,$s/\S\+/"&"/

2,$ 执行从第 2 行开始到文件末尾的替换。

\S\+ 匹配一系列非空白字符。它将匹配最左边和最长的一个,对应于每行中的第一个单词。

替换端的 & 替换匹配项本身,因此 "&" 将用双引号括起来。


更新:您可以通过匹配前面的 k-1 个单词将其概括为引用一行中的第 k 个单词。k-1 p>

例如,引用第 4 个词:

:%s/\(\S\+\s\+\)\{3}\zs\S\+/"&"/

这里 \(...\) 定义了一组非空白后跟空白,\{3} 匹配其中的 3 个,\zs 标记实际匹配的开始,因此只会替换该部分。

最终效果是您引用了包含 4 个或更多单词的行的第 4 个单词。

关于r - 每行第一个字加上双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60309202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com