下面是一个非常简单的正则表达式代码,它在php和ruby中正常工作,但在JS中没有.请求帮助我让它工作:
var r = /:[a-z]+/
var s = '/a/:b/c/:d'
var m = r.exec(s)
// now m is [":b"]
// it should be [":b", ":d"]
// because that's what i get in ruby and php
Run Code Online (Sandbox Code Playgroud)
使用RegExp.exec()with g(global)modifier用于在循环内部获取所有匹配项.
var str = '/a/:b/c/:d'
var re = /:[a-z]+/g
var matches;
while (matches = re.exec(str)) {
// In array form, match is now your next match..
}
Run Code Online (Sandbox Code Playgroud)
您也可以使用String.match()方法在这里.
var s = '/a/:b/c/:d',
m = s.match(/:[a-z]+/g);
console.log(m); //=> [ ':b', ':d' ]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
190 次 |
| 最近记录: |