Regex 在 url 末尾加上 Javascript 下划线后的数字
Regex a number at the end of a url after a underscore with Javascript
我正在尝试从以下形式的网址match
'12345':
http://domain.com/folder/title_of_this_12345
到目前为止,我已经尝试过:
var pattern = "_([0-9]+)^";
alert(window.location.pathname.match(pattern));
但我只是返回空?
目的是将数字从字符串末尾到第一个下划线进行正则表达式?
如果将
^
替换为 $
,您的方法将起作用。 ^
匹配字符串的开头,而$
匹配字符串的结尾(尽管此处不相关,请查看有关存在换行符时$
行为的文档)。
非正则表达式解决方案是可能的,但如果链接可能包含也可能不包含数字,则必须检查最后一个令牌是否为数字或检查解析结果是否为 NaN。所以正则表达式可能是这里的合适解决方案。
为了清楚起见,匹配的数字本身是在返回数组的索引 1 处检索的:
alert(str.match(/_('d+)$/)[1]);
尝试
var path = window.location.pathname;
var num = parseInt(path.substr(path.lastIndexOf('_') + 1, 10));
作为不涉及正则表达式的替代方案。
实际上,请参阅 GGG 对这个问题的评论,以获得更简洁的非正则表达式方法。
相关文章:
- 如何逃离<>在javascript下划线模板中
- 替换字母javascript的某个位置的下划线
- 与带下划线的后端同步时,转换为 CamelCase 以在 JavaScript 中使用
- Javascript 下划线每个总是返回 false
- Javascript Regexp :如果一个字母与一个数字相邻,请添加下划线
- 如何在 javascript 中为字符串中的数字添加下划线
- 使用Javascript和下划线循环嵌套对象和数组
- 如何删除列表中的对象?Javascript nodejs和下划线
- 使用下划线和jquery在javascript中自动填充表
- 用javascript中的下划线替换字符串中的字母
- 获取每个'单词'在使用regex的Javascript字符串中的每个下划线之后
- Javascript模板(例如.下划线/洛达什):信息性建议
- Regex 在 url 末尾加上 Javascript 下划线后的数字
- 使用下划线操作 JavaScript 对象
- 如何在 JavaScript 中使用 HTML5 文档的下划线小写对象值/数据
- 如何使用下划线获取 JavaScript 数组中的重复项
- 检查列表是否在javascript中使用下划线.js排序
- JavaScript 变量的作用域和下划线.js
- 从一个Array对象中提取关键值,并使用下划线javascript从其他对象中提取值进行筛选
- 带有下划线Javascript含义的字符串