首页 > 解决方案 > 再次加入拆分后的字符串,跳过拆分后形成的数组的一个索引

问题描述

我正在处理这个网址: demo.example.in/posts/0ewsd/13213

我需要从此 URL 获取主机名(demo.example.in),后跟路径(posts/0ewsd/13213

urlHost = 'demo.example.in/posts/0ewsd/13213'; let urlHostName = urlHost.split("/");

我尝试使用split()方法,但它最终拆分了整个 URL ... ['demo.example.in', 'posts', '0ewsd', '13213']

我需要的是获取demo.example.inposts/0ewsd/13213 有没有办法解决这个问题?

标签: javascriptarraysstringurl

解决方案


如果需要,您可以使用正则表达式 - 匹配并捕获除 a /(主机名)之外的任何内容,然后匹配 a /,然后匹配并捕获该行的其余部分(路径)。主机名将在第一个捕获的组中,路径将在第二个捕获的组中:

const input = 'demo.example.in/posts/0ewsd/13213';
const [, hostname, path] = input.match(/([^/]+)\/(.*)/);
console.log(hostname, path);


推荐阅读