用于解析一个或两个目录的正则表达式

时间:2017-06-02 13:08:48

标签: regex

我正在尝试编写一个能识别两者的正则表达式:

website.com/jobs/value1

website.com/jobs/value1/value2

目前我有'jobs/[^/]+/[^/]+';

但第一个链接无法识别,但第二个链接是。

有没有一种方法可以写出来这样可以识别jobs之后是否有一个或两个目录而不是第三个目录?

修改

我忘记提及原始问题,但我还需要它来识别: -

website.com/jobs

以及上述两个链接。

2 个答案:

答案 0 :(得分:3)

尝试将第二个目录设为可选:

jobs(/[^/]+){0,2}$

这应符合以下要求:

website.com/jobs
website.com/jobs/value1
website.com/jobs/value1/value2

但它在/jobs之后不会匹配三条路径。

在这里演示:

Regex101

答案 1 :(得分:0)

您可以使用:

jobs/([^/]+/?){0,2}$

([^/]+/?)匹配一个或多个无/字符的序列,最后是/字符。 {0,2}表示零,一次或两次。