示例Yelp网址:
http://www.yelp.com/biz/benu-san-francisco-4
http://www.yelp.com/biz/coi-san-francisco
最后一部分是 yelp_id ,应该返回。如果URL无效,则该函数应返回null。
这是我的实现,但它可能不是编写它的最佳方式。
function getYelpID(url){
if(url.indexOf('yelp.com/biz/') >= 0){
var sp = url.split('/');
if(sp.length >= 3){
return sp[sp.length - 1];
}else{
return null;
}
}else{
return null;
}
}
有人可以帮助我更好地验证YELP网址并返回ID吗?
注意:我确定有些人会粘贴一个以" www"而不是" http"。我还假设有些人会粘贴" https"代替。我想要一个适用于所有常见场景的函数(无论它们是什么)。我的功能应该适用于所有场景,但它绝对不是最好的方法。
答案 0 :(得分:0)
您可以使用:
function getYelpID(url) {
var m=/^(?:https?:\/\/)?(www\.)?yelp\.com\/biz\/([^\/]+)$/i.exec(str);
return m ? m[1] : null;
}