如何使用替换替换vim中的表达式的一部分

时间:2015-01-05 16:05:27

标签: regex vim substitution

如何将搜索模式的一部分放在替换字符串中。

我必须将abc->hwqe_w1_len替换为common_wqe_get_len(abc)
同样这一个def->hwqe_w1_lencommon_wqe_get_len(def)

在vim substitute命令中只使用一个表达式。

我尝试使用以下命令,但它表示无效命令 :%s /\(.*\)->hwqe_w1_len/\='common_wqe_get_len(' . submatch(1) '\)'/gc

当我移除关闭支撑时,它可以工作,但它需要abc之前的空格 :%s /\(.*\)->hwqe_w1_len/\='common_wqe_get_len(' . submatch(1)/gc

我在做什么错?如何将abc放在空格中并在末尾放置右括号?

1 个答案:

答案 0 :(得分:5)

:%s/\(\w*\)->hwqe_w1_len/common_wqe_get_len(\1)/g