[英]Capture groups with javascript regex
我有一个URL字符串,我想从中捕获/分隔符之间的所有单词:
因此,鉴于此网址:
"/way/items/add_items/sell_items":
我要捕获:
way
items
sell_items
add_items
如果我这样做:
'/way/items/sell_items/add_items'.match(/(\w+)/g)
=> [ 'way', 'items', 'sell_items', 'add_items' ]
它会给我一个数组,但是没有捕获组,为什么要这样做:
new RegExp(/(\w+)/g).exec("/way/items/sell_items/add_items")
=> [ 'way', 'way', index: 1, input: '/way/items/sell_items/add_items' ]
但这只是捕获方式..我希望它捕获所有四个词。
我怎么做?
谢谢
你应该写
var parts = url.split("/");
global
标志用于replace
方法。
另外,它使exec
方法从最后一个结果开始(使用RegExp
的lastIndex
属性)
如果由于某些原因需要精确的正则表达式,请使用此函数,否则请使用split()函数。
码:
var re = new RegExp(/\w+?(?=\/|$)/gi); // added |$
alert(re);
var text = '/way/items/add_items/sell_items';
var aRes = text.match(re);
结果: [方式,项目,add_items,sell_items];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.