2013-08-22 243 views
1

我有下面的脚本:javascript |正则表达式搜索URL

<script src="http://localhost/folder/api/v1/shop/1?template=light" type="text/javascript"></script> 

而且需要正则表达式来检测这个块:api/v{1-any number}/shop/{1-any number}

例如正则表达式块:shop.load.v1.php:

/.*shop\.load\.([^/]+\.)?php/ 

谢谢。

+0

我不知道我明白你为什么提到'shop.load.v1.php'正则表达式?这与检测块“api/v {1-任意数量}/shop/{1-任意数量}”有什么关系? – Jerry

回答

5

您可以使用此模式:

/api\/v(\d+)\/shop\/(\d+)/ 

它将匹配一个api/v后面跟着一个或多个数字,然后是文字/shop/后面跟着一个或多个数字。

但是这会匹配像api/v00/shop/00这样的文本。如果你想确保匹配的数量大于或等于1,您可以使用此:

/api\/v([1-9]\d*)\/shop\/([1-9]\d*)/ 
0

您可以使用:

/api/v[1-9]{1}\/shop\/[1-9]{1}/

这是,如果它只能有一个数字。对于多位数:

/api/v[1-9]+\/shop\/[1-9]+/