有没有办法可以用一个'匹配'函数检查多个条件?

时间:2012-07-28 15:58:11

标签: java string

请考虑以下声明:

if(UserAgent.matches("iPhone"))

我必须通过手机或PC检测用户是否在线。要做到这一点,我需要检查大量的移动设备,浏览器。而不是写相同的部分:

if(UserAgent.matches())

有什么办法可以在matches函数上查看吗?我的意思是使用|来表示OR。喜欢:

UserAgent.matches(SOME MODIFICATION "iPhone" | "Android" | "Blackberry".....)

2 个答案:

答案 0 :(得分:3)

实际上,String.matches()匹配为正则表达式,因此您可以编写类似

的内容
if (UserAgent.matches("iPhone|Android|Blackberry"))

答案 1 :(得分:0)

将所有字符串放入Set中,然后检查该集合中是否包含UserAgent字符串。

if set.contains(UserAgent.toString())
    // do something
end