You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JavaScript正则获取URL中/country/后的元素?

解决方案:获取URL中紧跟/country/后的元素

嘿,我懂你要的效果了——之前用match(/[^/]+$/)抓URL最后一段很顺手,但这次要精准定位/country/后面的第一个分段对吧?给你两种靠谱的实现方法:

方法一:正则捕获组

直接用带捕获组的正则,专门匹配/country/后面的目标内容:

const url = '/country/set/profile/yellow';
const matchResult = url.match(/country\/([^/]+)/);
// 匹配成功时,捕获组的内容存在matchResult[1]里
if (matchResult) {
  console.log(matchResult[1]); // 输出 "set"
}

正则逻辑说明:

  • country\/:精准匹配字符串country/(注意转义斜杠/,避免和正则的边界符冲突)
  • ([^/]+):捕获组,匹配非斜杠的所有连续字符,也就是/country/之后直到下一个/前的内容

方法二:字符串分割法(无需正则)

如果觉得正则有点抽象,用split('/')把URL拆成数组,再定位country的位置取后续元素:

const url = '/country/set/profile/yellow';
// 分割后过滤掉空字符串(因为URL开头可能有/,会生成空元素)
const urlSegments = url.split('/').filter(segment => segment);
// 找到"country"在数组中的索引
const countryPosition = urlSegments.indexOf('country');
// 确保索引有效且后面存在内容
if (countryPosition !== -1 && countryPosition + 1 < urlSegments.length) {
  console.log(urlSegments[countryPosition + 1]); // 输出 "set"
}

这种方法可读性更高,适合需要对URL分段做更多扩展操作的场景。

两种方法都能稳定拿到你要的结果,根据自己的代码风格选就行~

内容的提问来源于stack exchange,提问作者Cláudio Ribeiro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 06:28:04