2013-06-24 54 views
3

鉴于此用户代理:正则表达式排除比赛

Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10 

而这正则表达式:

Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune 

我需要这样如果用户代理包含修改的正则表达式手机和iPad也不会产生一个匹配。但是,如果用户代理只包含没有iPad的移动设备,它确实会产生匹配。

我通常与正则表达式,但不知道如何处理这一个。

任何帮助将不胜感激。谢谢。

UPDATE 6/26:仍然没有解决方案。

回答

3

提前使用负的样子:

((?!^.*iPad.*$)Mobile)|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune 
+0

非常感谢它极大的赞赏,让我试试这个。 – Russell

+0

嗯,这似乎并没有工作,我认为如果我正确地理解语法,这是因为iPad是在移动之前,我会尝试与它一起玩,看看我能否得到它的工作。 – Russell

+1

立即尝试 - 我提前看了一下。其实目前的正则表达式是我原本应该做的。 – Bohemian