/
(?(DEFINE)
(?P<ver>\d+(?:\.\d+)*(?![.\d]))
(?P<agent>Mozilla\/(?&ver))
(?P<os>(?&os_windows)|(?&os_linux)|(?&os_macintosh)|(?&os_ios))
(?P<os_windows>Windows[ ]\w+[ ](?&ver))
(?P<os_linux>Linux(?:[ ](?:i686|x86_64))?)
(?P<os_macintosh>Macintosh)
(?P<os_ios>(?:CPU[ ])?iPhone[ ]OS|CPU[ ]OS.*?like[ ]Mac[ ]OS[ ]X)
(?P<device>(?&device_ios)|(?&device_firefox)|(?&device_android))
(?P<device_ios>iPhone|iPad)
(?P<device_firefox>Mobile)
(?P<device_android>Android(?:[ ](?&ver))?)
(?P<browser>
(?:
(?&browser_ie)
| (?&browser_safari)
| (?&browser_chrome)
| (?&browser_chromium)
| (?&browser_firefox)
| (?&browser_version)
# | (?&browser_nexus)
| (?&browser_mobile)
| (?&browser_gsa)
| (?&browser_quicklook)
| (?&browser_opera)
)