分页: 1 / 1

关于vim 正则使用

发表于 : 2006-05-15 8:44
guoshuang
比如

http://123.htm

我以前在editplus用查找替换

(.*)

->

[url=\1]\1[/url]

替换为

[url=http://123.htm]http://123.htm[/url]

我想在vim 中实现,但看了半天帮助也搞不定,vim的正则写法很奇怪,谁能就此给个例子。

谢谢

发表于 : 2006-05-15 17:53
leal
直接在替换里写入

http://123.htm

好像并无多大区别啊,不过要是想把 所有 http 网址替换成 [url ....这样,那就得用上正则表达式了

发表于 : 2006-05-16 9:01
guoshuang
我就是需要把所有网址转换

发表于 : 2006-05-16 12:07
leal
见贴子
将 URL 地址替换成 URL 格式化文本

但愿能帮上你的忙 :)

发表于 : 2006-05-26 8:09
detecti1
按你写的条件在vim里要输入
:%s/\(.*\)/\[URL=\1\]\1[\/url\]/

我也是新手 :oops:
这个会把没一行都替换成[url=http://123.htm]http://123.htm[/url] 的格式

发表于 : 2006-06-12 20:51
yangkwch
detecti1 写了:按你写的条件在vim里要输入
:%s/\(.*\)/\\1[\/url\]/

我也是新手 :oops:
这个会把没一行都替换成[url=http://123.htm]http://123.htm
的格式
这样即使该行后有其他字符也给替换了,

http://123.htm is here。
就替换成了
\http://123.htm
可以考虑用
:%s/\(http:\/\/[0-9a-zA-Z.?&%/]*\.htm\)/[URL=\1\]\1[\/url\]/g
如果是一个其他网址,替换起来比较麻烦,还没有想好一种通用的方法。