[英]How to replace backslashes with forward slashes in all #include “…\…”
[英]How does one escape backslashes and forward slashes in VIM find/search?
例如,如果我想用包含反斜杠或正斜杠的字符串進行查找和替換,這將如何在 vim 中完成?
示例查找和替換是: :%s/foo/bar/g
如果我想找到所有出現的<dog/>
並將其替換為<cat\>
與您在 linuxy 程序的其他任何地方使用反斜杠轉義字符的方式相同:
:%s/<dog\/>/<cat\\>
但請注意,您可以選擇不同的分隔符:
:%s@<doc/>@<cat\\>@
這可以節省您在帶有大量斜杠的模式中輸入所有那些耗時、令人困惑的反斜杠。
從文檔中:
除了包圍模式和替換字符串的
/
之外,您可以使用任何其他單字節字符,但不能使用字母數字字符\
、"
或|
。如果您想在搜索模式或替換中包含/
,這很有用細繩。
%s:<dog/>:<cat>
如果 / 分隔符對某些模式變得煩人,您可以替換它們。
用反斜杠引用它們。 此外,使用除斜線之外的其他分隔符通常會有所幫助。
:%s#<dog/>#<cat\\>#
或者如果您必須使用斜杠作為替代命令分隔符
:%s/<dog\/>/<cat\\>/
我正在尋找類似的東西,以搜索包含/
字符的寄存器值(記錄宏)。 解決方案是使用?
令牌而不是/
。
語法是:
:%s/<dog\/>/<cat\\>/g
反斜杠 斜杠 反斜杠 星號
/(<- the prompt)\/\*
所以在你輸入之后它看起來像
/\/\*
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.