如何匹配匹配单词后不应包含单词的行

时间:2015-07-29 11:19:50

标签: regex

1)/ abs / 2-bhk-property-for-sale-in-builders-apartments-bang123asdxc / 38070127?page = 509

2)/ vjr-apartments / private-k3zs0gdf

3)/ dolphin-jasmine-apartments-navimumbai-approvals / psddp-3qfci22i

4)/ kanaka-lakshmi-apartments-andra / private-67mwcdbe

将字符串与'apartment'匹配但与'private'不匹配的正则表达式是什么? 即应匹配1)和3)而不是2)和4)

我写了这个正则表达式.*?(-)(apartments)(?!\/private).*但它没有用。

2 个答案:

答案 0 :(得分:2)

您可以使用此正则表达式:

-apartments(?!.*?/private)
如果(?!.*?/private)字符串位于/private之后,则

-apartments为否定匹配将导致匹配失败。

RegEx Demo

在某些语言中/需要转义,因此请使用:

/-apartments(?!.*?\/private)/

答案 1 :(得分:0)

匹配该行。

{{1}}