URL的JavaScript字符串.replace

时间:2019-03-15 13:35:09

标签: javascript

我检索了带有chrome扩展名的数据库的站点, 需要JavaScript清理功能的帮助

例如

https://www.alibaba.com/product-detail/_60789694386.html?spm=a2700.galleryofferlist.normalList.1.5be41470uWBNGm&s=p

我的目标输出是:

_60789694386.html

.html过去的所有内容都需要删除,但是由于每个URL中的内容有所不同-我迷路了

输出在.csv文件中,我在其中运行JavaScript清理数据。

   this.values[8] = this.values[8].replace("https://www.alibaba.com/product-detail/","");

this.values [8]是我如何定位脚本中的列。 (第8列包含网址)

7 个答案:

答案 0 :(得分:3)

好吧,您可以使用exports.children = functions.database .ref('/Success') .onWrite((change, context) => { console.log(change.after.numChildren()); return null; });

split

var final = this.values[8].split('.html')[0]为您提供了一系列由字符串分隔的项目,split,然后是第一个。

答案 1 :(得分:1)

考虑使用substr

RCTRootView

答案 2 :(得分:0)

您可以使用分割方法将文字与?例如。

var link = "https://www.alibaba.com/product-detail/_60789694386.html?spm=a2700.galleryofferlist.normalList.1.5be41470uWBNGm&s=p"
var result = link.split('?')[0].replace("https://www.alibaba.com/product-detail/","");
console.log(result);

答案 3 :(得分:0)

不确定我是否理解您的问题,但是请尝试

var s = 'https://www.alibaba.com/product-detail/_60789694386.html?spm=a2700.galleryofferlist.normalList.1.5be41470uWBNGm&s=p'
s = s.substring(0, s.indexOf('?'));
console.log( s );

答案 4 :(得分:0)

当您不关心可读性时...

this.values[8] = new URL(this.values[8]).pathname.split("/").pop().replace(".html","");

答案 5 :(得分:0)

替代,不使用分割

<ul><!-- open whole list -->
<li>Title of Section One
     <ul>
      <li>Apple</li>
      <li>Orange</li>
      <li>Banana</li>
     </ul>
</li><!-- closing list under section one -->
<li>Title of Section Two
     <ul>
      <li>Beef</li>
      <li>Chicken</li>
      <li>Fish</li>
     </ul>
</li><!-- closing list under section two -->
<li>Title of Section Three
     <ul>
      <li>Carrot</li>
      <li>Celery</li>
     </ul>
</li><!-- closing list under section three -->
</ul><!-- closing whole list -->

答案 6 :(得分:0)

您可以使用正则表达式来完成它。据我所知,您可以执行以下操作:

    var v = "https://www.alibaba.com/product-detail/_60789694386.html?spm=a2700.galleryofferlist.normalList.1.5be41470uWBNGm&s=p"
    result = (v.match(/[^\/]+$/)[0]);
    result = result.substring(0,result.indexOf('?'));
    console.log(result);    // will return _60789694386.html