javascript - javascript中的正则表达式转义反斜杠

标签 javascript regex

我正在尝试使用正则表达式解析 URL 的一部分以包含在脚本中,结果为 null。不太确定我做错了什么。我尝试过使用 regexr.com,它在那里工作正常,但在我的代码中似乎不起作用。

var url = window.location.href //this would return ..//path/##-###/something.aspx
var regex = /\d{2}-\d{3}/g
var projNumb = url.match(regex);
document.write(projNumb);

如果我用 12-234-567 替换 window.location.href 中的字符串,它将返回 34-567。似乎与 ## 之前的“/”有关,但如果我像//那样转义/,JavaScript 会将其视为注释。

最终结果,我试图从 http://www.example.com/path1/path2/17-123/home.aspx 中得到 17-123并将其分配给一个变量以进行查询。

最佳答案

正则表达式应以 / 开头和结尾,如果您想匹配 / 则需要对其进行转义。

window.location.pathname.match(/\/(\d{2}-\d{3})\//)

关于javascript - javascript中的正则表达式转义反斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42956801/

相关文章:

javascript - 简单的正则表达式Excel提取

javascript - 我如何用 Javascript 编写这个 urllize 函数?

javascript - 引用和原始原型(prototype)值

javascript - 错误 : MongoError: Authentication failed. 我正在使用 docker 和 mongoose

javascript - Babel 已经做了 Object.create(superClass.prototype) 为什么还要用 setPrototypeOf 来继承?

javascript - 如何缩短 JavaScript 的正则表达式?

javascript - Angular - 检查多个子组件是否脏

javascript - 带有 Bootstrap 弹出框的 jQuery UI slider 在幻灯片事件上发生变化

PHP正则表达式。仅在第一个单词后有空格的字母表

regex - 如何在 R 中使用 sub 替换 '(' 、 ')' ?