匹配“profile view”或“view_profile”而不是“profile.profile”或“view(view)”的最简洁方法是什么?

时间:2015-03-09 08:33:07

标签: regex

我基本上都在寻找与这些匹配的正则表达式:

ProfileView
profile_views
views of candidate profile
viewed_profile

但不是这些:

profile(profile)
view = candidate.view

换句话说,我想a.+bb.+a但不是a.+ab.+b

我认为这需要以某种方式捕获群体,但我不太清楚如何。 (a|b).+(^\1) ......如果你理解了我的意思,那就是这样的。

1 个答案:

答案 0 :(得分:5)

您需要使用交替运算符|

(?i)^(?:profile.*views?|views?.*profile)$

DEMO

s?匹配可选的s(?i)不区分大小写的修饰符,它有助于进行不区分大小写的匹配。