Postgres正则表达式获得单场比赛

时间:2018-04-06 15:04:04

标签: regex postgresql

我在Postgres中有一个路径列表:

/approve/optimal/roadmap/

/approve/optimal/roadmap/payments/

/approve/optimal/roadmap/payments/benefits/

/approve/optimal/roadmap/payments/healthcare/

我想要一个正则表达式,它将获得/approve/optimal/roadmap/的直接后代(即:/approve/optimal/roadmap/payments/,但没有别的)

我查看了~运算符,但似乎无法使用POSIX正则表达式。

SELECT * FROM table WHERE path ~ '/approve/optimal/roadmap/.+?/^.+/'

如果没有正则表达式就可以实现这一点,我很乐意实施这个解决方案,正如正则表达式让我头疼。

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容:

SELECT * FROM table WHERE path ~ '^/approve/optimal/roadmap/[^/]+/$'

Try it here