首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将URL中的最后一个单词与JavaScript匹配

将URL中的最后一个单词与JavaScript匹配
EN

Stack Overflow用户
提问于 2015-02-26 04:50:50
回答 4查看 629关注 0票数 0

URL如下所示:

代码语言:javascript
复制
http://www.example.com/?lessoncontent=lesson-003-pinyin

我设法得到了最后一个部分:

代码语言:javascript
复制
var url = window.location.href.split("/").pop();

所以现在我得到了这个

代码语言:javascript
复制
?lessoncontent=lesson-003-pinyin

不过,不知道如何获得最后一部分(pinyin)。我希望能够使用这样的URL进行如下语句:

代码语言:javascript
复制
?lessoncontent=lesson-001-pinyin
?lessoncontent=lesson-003-pinyin
?lessoncontent=lesson-002-complete
?lessoncontent=lesson-003-complete

(只考虑到URL的最后一个字)。

示例:

代码语言:javascript
复制
if (match === "pinyin") { //do stuff }
if (match === "complete") { //do stuff }
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-02-26 04:55:17

只需在-上拆分并从其中提取最后一个元素。

代码语言:javascript
复制
var match = window.location.href.split("-").pop();
if (match === "pinyin") {}  // do stuff 
if (match === "complete") {} // do stuff

我们在-上拆分,然后从数组中弹出最后一个元素。

票数 3
EN

Stack Overflow用户

发布于 2015-02-26 04:52:32

代码语言:javascript
复制
[^-]*$

尝试this.See demo.You可以直接将其应用到链接上,并在一步内得到答案。

https://regex101.com/r/wU7sQ0/16

代码语言:javascript
复制
var re = /[^-]*$/gm;
var str = 'http://www.example.com/?lessoncontent=lesson-003-pinyin';
var m;

while ((m = re.exec(str)) != null) {
if (m.index === re.lastIndex) {
re.lastIndex++;
}
// View your result using the m-variable.
// eg m[0] etc.
}
票数 1
EN

Stack Overflow用户

发布于 2015-02-26 04:58:46

我想试试这个:

代码语言:javascript
复制
(\w+)[&?\/]?$

它将适用于所有类型的URL,例如,是否存在URL参数。它将使所有单词字符达到可选的尾随&?/这里见Regex 101演示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28734683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档