【发布时间】:2016-01-24 02:34:19
【问题描述】:
我是正则表达式的新手,如果您能对此有所了解,那就太好了。
我有一个很大的 xml 文件,它有大约 50k 行由一些第三方工具构建。
我有这样的行
<title>Apache 2.2 < 2.2.28 Multiple Vulnerabilities</title>
我只想在整个 xml 中删除此标题标签内的 <。
我在vim 和sed 中尝试了一些模式,但没有成功。
【问题讨论】:
-
尝试
(<[^<]*>)|<并替换为第一个反向引用。 -
您好 stribizhev,感谢您的回复,我在我的 vim 中运行此正则表达式:%s/()|/gn 将 / 替换为空但运气不佳如果我做错了我
-
您需要替换为第一个反向引用,例如
:%s/\(<[^<]*>\)|</\1/g。我猜你需要在 vim 中使用\(...\)来捕获子字符串。