javascript - 用户代理上的正则表达式匹配设备 [英] javascript - regex matching devices on user agent
问题描述
我正在使用 PHP 类Mobile Detect"来检测用户设备类型(平板电脑/手机),但是我也想在 javascript 中检测某些设备.有人可以帮我将以下内容转换为 javascript 正则表达式(只需要一个真/假返回)?
I'm using the PHP class "Mobile Detect" to detect user device type (tablet/phone) however I also want to detect certain devices in javascript. Can someone help me convert the following into javascript regex (just need a true/false return)?
var user_agent = navigator.userAgent;
var samsung = 'Galaxy.*Tab|SAMSUNG.*Tablet|Galaxy.*Tab|Android.*GT-';
// if statement checking samsung regex against user agent
var nexus = '^.*Android.*Nexus(((?:(?!Mobile))|(?:(\s(7).+))).)*$';
// if statement checking nexus7 regex against user agent
推荐答案
您在寻找这样的东西吗?
Are you looking for something like this?
var user_agent = navigator.userAgent;
var samsung = /Galaxy.*Tab|SAMSUNG.*Tablet|Galaxy.*Tab|Android.*GT-/i;
// if statement checking samsung regex against user agent
if (samsung.test(user_agent)) {
// This is a samsung mobile device
}
var nexus = /^.*Android.*Nexus(((?:(?!Mobile))|(?:(\s(7).+))).)*$/i;
// if statement checking nexus7 regex against user agent
if (nexus.test(user_agent)) {
// This is a nexus mobile device
}
或者您是否真的需要帮助修复故障/不完整的正则表达式?
Or did you actually want help fixing malfunctioning / incomplete regular expressions?
如果你需要一个可靠的正则表达式,我建议你去 txt2re.com 玩一下,它是最好的正则表达式生成器我知道.
If you need a solid regular expression, I suggest you go play around at txt2re.com it's the best regular expression generator I know of.
这篇关于javascript - 用户代理上的正则表达式匹配设备的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!