1
如何將替換字符串中的部分搜索模式。如何使用替代替換vim中的表達式部分
我有common_wqe_get_len(abc)
同樣這一個def->hwqe_w1_len
common_wqe_get_len(def)
使用VIM替代命令只有一個表達式來取代abc->hwqe_w1_len
。
我試過使用下面的命令,但它說無效的命令。
:%s /\(.*\)->hwqe_w1_len/\='common_wqe_get_len(' . submatch(1) '\)'/gc
當我刪除右括號它的工作原理,但它之前abc
:%s /\(.*\)->hwqe_w1_len/\='common_wqe_get_len(' . submatch(1)/gc
需要的空間是什麼錯誤我在做什麼?我怎樣才能把abc
的空格和最後的大括號放在一起?
您在'submatch(1)'後面缺少串聯運算符'.'。但是,因爲這全是文本的,你不需要替換表達式,一個簡單的'\ 1'反向引用就可以做到。 –