题
我有一个巨大的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小程序真的很难吃。您仍然可以使用相同的正则表达式,但您必须使用反斜杠 \
替换美元符号 $
。
不隶属于 StackOverflow