简单的正则表达式/:[a-z] /在javascript中没有按预期工作
发布时间:2020-12-14 05:37:20 所属栏目:百科 来源:网络整理
导读:下面是一个非常简单的正则表达式代码,它在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
下面是一个非常简单的正则表达式代码,它在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 解决方法
使用带有g(全局)修饰符的RegExp.
exec() 意味着在循环内使用以获取所有匹配.
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.. } 您也可以在此处使用String. var s = '/a/:b/c/:d',m = s.match(/:[a-z]+/g); console.log(m); //=> [ ':b',':d' ] (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |