javascript - 如何从不需要的部分剥离字符串?

标签 javascript jquery imdb

给定一个像这样的网址:

https://images-na.ssl-images-amazon.com/images/M/MV5BMTM3MTc3OTc0NF5BMl5BanBnXkFtZTcwOTQ0OTM1MQ@@._V1._CR34,0,295,440_UX32_CR0,0,32,44_AL_.jpg

我怎样才能让它变得像

https://images-na.ssl-images-amazon.com/images/M/MV5BMTM3MTc3OTc0NF5BMl5BanBnXkFtZTcwOTQ0OTM1MQ@@._V1._CR34,44_AL_.jpg

我遇到的问题是使用以下方法检索 IMDB 海报图像:

$('form[name="search-imdb"]').on("submit", function(e) {
  var form = $(this);
  e.preventDefault();
  $.ajax({
     url: "http://imdb.wemakesites.net/api/search",
     data: form.serialize(), // assuming the form has a hidden input with api_key name, containing your API key
     crossDomain: true,
     dataType: "jsonp",
     success: function(data) {
       window.console.log(data);
     }
  });
});

我收到如下 json 响应:

"thumbnail": "https://images-na.ssl-images-amazon.com/images/M/MV5BMTYwOTEwNjAzMl5BMl5BanBnXkFtZTcwODc5MTUwMw@@._V1_UX32_CR0,0,32,44_AL_.jpg"

我没有收到海报和 the api i am using没有帮助,但缩略图包含各种格式,其中之一是 44_al 这是我想保留为字符串以便输出如下:

function imdbLoad() {
  var form = $("#usp-title").val();
  var encodedTerm = encodeURIComponent(form);
        $.ajax({
           url: "http://imdb.wemakesites.net/api/search",
           data: {
             q: encodedTerm
           },
           crossDomain: true,
           dataType: "jsonp",
           success: function(data) {
             $("#imdb").empty();
             $.each(data.data.results, function(i, items) {
               $("#imdb").append('<h2>'+i+'</h2>');
               $.each(items, function(k, item) {
                 $("#imdb").append("<div class='col-xs-12 col-md-4'><div class='thumbnail'><img class='img-responsive' src='"+ item.thumbnail +"'><div class='caption'><h3>"+ item.title +"</h3><p>"+ item.title +"</p></div></div>");
               });
             });
           }
        });
}

除非有人有其他方式获取海报网址

最佳答案

您可以使用正则表达式替换不需要的字符串部分

var url = "https://images-na.ssl-images-amazon.com/images/M/MV5BMTM3MTc3OTc0NF5BMl5BanBnXkFtZTcwOTQ0OTM1MQ@@._V1._CR34,0,295,440_UX32_CR0,0,32,44_AL_.jpg"
var regex = /,.*(?=,)/g;
console.log(url.replace(regex, ''))

或使用逗号(,)分割并连接第一部分和最后一部分。

var url = "https://images-na.ssl-images-amazon.com/images/M/MV5BMTM3MTc3OTc0NF5BMl5BanBnXkFtZTcwOTQ0OTM1MQ@@._V1._CR34,0,295,440_UX32_CR0,0,32,44_AL_.jpg"

var parts = url.split(',');
console.log(parts[0] + ',' + parts.pop())

关于javascript - 如何从不需要的部分剥离字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41807567/

相关文章:

javascript - 如何保存 Canvas 图像

movie - Imdb 上所有电影名称、 Actor 、导演、编剧的列表

javascript - 上传到 Google Cloud Storage 时获取 403 SignatureDoesNotMatch?

javascript - 为什么使用 Bookshelf.js 插入脚本会挂起?

Javascript 幻灯片卡住

javascript - 更新 Canvas 元素而不刷新页面

javascript - 下划线模板中未应用 jQuery 移动 css 样式

javascript - 使用 jQuery 发送表单时获取正确的对象数量

python - 在没有外部模块的网站上查找信息

c# - 从 XML C# 读取特定位置