正则表达式问题:单词的独立位置

时间:2010-04-08 16:44:50

标签: regex

是否可以定义一个检查例如的正则表达式模式。 3个词独立于他们在主弦中的位置?

例如。我的字符串类似于"click here to unsubscribe: http://www.url.com"

该模式也适用于"http:// unsubscribe click"

THX

3 个答案:

答案 0 :(得分:9)

您可以使用positive lookaheads。例如,

(?=.*click)(?=.*unsubscribe).*http

是一个正则表达式,它会从click的当前位置(不向前移动)向前看,然后是unsubscribe,然后正常搜索http

答案 1 :(得分:2)

可能,但会产生非常复杂的正则表达式,例如:

/(click.*unsubscribe|unsubscribe.*click)/

基本上,您需要为每个订单设置不同的正则表达式部分。不理想。最好只使用多个正则表达式,每个术语一个。

答案 2 :(得分:2)