Javascript 正则表达式捕获

标签 javascript regex

我确定堆栈溢出可能有类似的东西,但我找不到任何东西,我对应该非常简单的东西感到非常沮丧。

我需要使用 javascript 捕获部分 url(类似于 url 重写引擎)。

网址结构:

http://example.com/constant/CAPTURETHIS

http://example.com/constant/CAPTURETHIS/

http://example.com/constant/CAPTURETHIS#noise

http://example.com/constant/CAPTURETHIS/#noise

我只需要为所有 3 个 senerios 返回 CAPTURETHIS 文本

最佳答案

JavaScript 支持使用 a string object's match method 检索正则表达式捕获组或 a regular-expression object's exec method :

var captureThis = url.match(/^http:[/][/]example[.]com[/]constant[/]([^/]+)/)[1];
var captureThis = /^http:[/][/]example[.]com[/]constant[/]([^/]+)/.exec(url)[1];

但对于您的示例,我几乎想知道使用 the string object's split method 是否更简单:

var captureThis = url.split(/[/]/)[4];

关于Javascript 正则表达式捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12522202/

相关文章:

javascript - 如何重新托管 KendoUI 手机模拟器(包括示例)

javascript - AWS Lambda 调用函数并不总是返回

python - 检索 Stack Overflow 上的所有功能问题

java - 在java中使用正则表达式捕获多个文本 block

php - 如果仅前一个或下一个字符不包含相同字符,则替换字符串中的字符

javascript - 希伯来语 Unicode 范围在 JavaScript 正则表达式中不起作用?

javascript - ng-class 表达式不会动态改变

javascript - 如何使用 JavaScript 将按钮的 onclick 更改为另一个函数?

javascript - 无法从 HTTP GET 获取数据 - Javascript

python - 正则表达式 split 方法中的分隔符无法正常工作