![](/img/trans.png)
[英]How to match the end of a line but not a paragraph with a regex in Vim?
[英]How to append regex match to a line in vim?
是否可以使用:%s
在一行中找到匹配,然后將其附加到該行?
以下作為示例字符串,我期望類似:s/\\(value\\)/\\$\\1/
將value
附加到行的末尾,但它只是在value
內聯之前添加$
演示字符串:
This value is too damn high!
預期產量:
This is too damn high!value
實際產量:
This $value is too damn high!
你可以快速而骯臟:
:s,\(.*\)\(value\)\(.*\),\1\3\2,
但可能有更簡潔的方法來做到這一點。
查找和追加(如上所述):
:s,\(.*\(value\).*\),\1\2,
在Vim中, \\$
是一個字面的美元符號。 行尾匹配只是$
。 您可以使用\\1
替換第一個匹配的組,使用\\0
匹配整個匹配。 因此:
:s#.*\(value\).*#\0\1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.