我有一个巨大的txt文件和Editpad Pro列表,其中包含根文件夹中的图像。

http://www.othersite.com/image01.jpg
http://www.mysite.com/image01.jpg
http://www.mysite.com/category/image01.jpg

如何使用regexp仅更改根目录上具有图像的那些?

http://www.othersite.com/image01.jpg
http://www.NEW_WEBSITE.com/image01.jpg
http://www.mysite.com/category/image01.jpg

我正在使用 RegExr在线应用

有帮助吗?

解决方案

搜索并替换(不区分大小写,正则表达式):

http://www\.mysite\.com/([^/]*\.(?:jpg|gif|png))

使用:

http://www\.NEW_WEBSITE\.com/\1

修改

是的,如果存在任何此类文件或目录,这也将重新基于 http://www.mysite.com/.jpg 等文件。如果有人不喜欢这个,那么只需将 * 替换为 + - 或者用 {X,} 替换,如果你的假设恰好是那个< em>一个图像文件至少需要一个X字符名称等等 - 但真的,这可能超出了 lab72 的范围正试图实现(即图像文件名验证。)

其他提示

url1.replace(/((https?:\/\/www.?)(\w*?)(.com\/image\d*?\.(png|gif|jpg))/, 
             "$1newName$3");

像上面这样的东西应该有效。代码在AS中(尽管不编译:P)请注意,$ 2与我们用 yoursite 替换的网站名称相匹配。

替换

http://www\.mysite\.com/image(.*)

http://www.newsite.com/image$1

话虽如此,您可能也会对一个体面的文本编辑器<感兴趣/ A>。那个flash小程序真的很难吃。您仍然可以使用相同的正则表达式,但您必须使用反斜杠 \ 替换美元符号 $

scroll top