[英]Using vim in Linux to replace specific words
我有一個.txt文件,其信息如下:
...
353 48 338 48 338 9 353 9 **personperson走** 281 64 259 64 259 4 281 4 person
353 48 338 48 338 9 353 9 **personabc** 281 64 259 64 259 4 281 4 person
353 48 338 48 338 9 353 9 **persondef** 281 64 259 64 259 4 281 4 person
...
我想將所有那些粗體字替換為人(原始字為普通字,而不是粗體)
像這樣:
...
353 48 338 48 338 9 353 9 **person** 281 64 259 64 259 4 281 4 person
353 48 338 48 338 9 353 9 **person** 281 64 259 64 259 4 281 4 person
353 48 338 48 338 9 353 9 **person** 281 64 259 64 259 4 281 4 person
...
我嘗試使用以下命令替換,但old_string部分不同。
%s/old_string/new_string/g
有什么方法可以在(old_string)部分中使用grep替換person *(在空白處停止)
您可以在vim中使用以下命令:
:%s/person\w\+/person/g
這將替換所有接續人的單詞,然后按人替換單詞字符
有關vim中替代功能的更多信息,您可以在這里找到: http : //vim.wikia.com/wiki/Search_and_replace
我會做:
%s/\<person\zs\S\+//g
foopersonbar
代替fooperson
走
(OP的意思是“停在空白處”)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.