5

需要从请求的 URI 中捕获 3 个元素。

URI 的有效格式如下:

/users/{id}.{size}.{type}

而 id 和 size 可以是数字。并且类型只能是“jpg”或“png”。

扭曲的是尺寸是可选的。因此 URI 的另一种格式是:

/users/{id}.{type}

有效示例如下:

/users/123.100.jpg
/users/123.100.png
/users/123.jpg
/users/123.png

无效示例如下:

/users/asd.jpg
/users/123.tiff
/users/123..jpg
/users/123..100..jpg
/users/123..100.jpg
/users/123.100

谢谢。

4

2 回答 2

2

试试这个正则表达式。它提取id, size and type

首先,此正则表达式验证 url 是否与您的有效模式匹配。

\/users\/(\d+)(?:\.(\d+))?\.(jpg|png)
  • ID:(?<=/)\d+
  • 尺寸:(?<=\.)\d+(?=\.). 假设 url 是以有效的方式构造的。
  • 类型:.*(jpg|png)
于 2013-03-01T13:25:53.543 回答
1

这个正则表达式应该为你做验证:

/users/(\d+\.){1,2}(jpg|png)

例子见这里:http ://regexr.com?33vba

于 2013-03-01T13:26:22.887 回答