gpt4 book ai didi

ios - 使用正则表达式从用户代理检测 iOS 版本号

转载 作者:可可西里 更新时间:2023-11-01 04:07:57 27 4
gpt4 key购买 nike

如果我有一个像

这样的 iOS 用户代理

Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7

Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Mobile/7D11

我如何使用正则表达式检测 iOS 版本,以便它返回例如

4.0

对于上述用户代理?

最佳答案

适用于我的 RegEx 是:

/OS ((\d+_?){2,3})\s/

iPad 5.1.1 有一个像这样的HTTP_USER_AGENT:

"Mozilla/5.0 (iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3"

所以 iOS 版本中的 3 个数字非 iPhone OS 存在。

一个可能的 Ruby 实现可能是:

def version_from_user_agent(user_agent)
version = user_agent.match(/OS ((\d+_?){2,3})\s/)
version = version[1].gsub("_",".") if version && version[1]
end

如果找不到 iOS 版本,它返回 nil

关于ios - 使用正则表达式从用户代理检测 iOS 版本号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11171895/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com