我使用.replace()和jQuery从img URL中删除不同的字符串:
src = src.replace("/_w", "");
src = src.replace("_jpg", "");
src = src.replace("_jpeg", "");
src = src.replace("_png", "");
src = src.replace("_gif", "");
正如你可以看到它非常具有灵性而且不是很聪明,无论如何,我可以用更优雅的东西来代替它。
基本上,网址将始终为以下之一:
http://local.com/images/_w/image_jpg.jpg
http://local.com/images/_w/image_jpeg.jpeg
http://local.com/images/_w/image_png.png
无论如何我可以写一个.replace()来删除/ _w /然后删除最后一个'。'之间的所有字符。在URL和最后一个下划线?
答案 0 :(得分:2)
未经测试 - 但我认为应该这样做
src = src.replace(/\/_w|_jpg|_png|_gif/g,'')
或者更好......
src = src.replace(/\/_w(.+?)_(jpg|png|gif)\./,"$1.")
匹配/ w,然后将所有字符存储到_gif或_jpg等...然后用存储的内容替换所捕获的所有内容(后跟一个点)。
答案 1 :(得分:0)
正则表达式是你的朋友。
如果每次可以使用/_w
和.
之间替换所有内容非常安全:
src = src.replace(/\/_w[^.]*/,'');
如果您熟悉正则表达式的基础知识,它将为您节省无数问题的时间。这是一个非常多功能的工具。