Learn more  » Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Bower components Debian packages RPM packages NuGet packages

vistahigherlearning / logstash   deb

Repository URL to install this package:

/ opt / logstash / vendor / ua-parser / regexes.yaml

user_agent_parsers:
  #### SPECIAL CASES TOP ####

  # HbbTV standard defines what features the browser should understand.
  # but it's like targeting "HTML5 browsers", effective browser support depends on the model
  # See os_parsers if you want to target a specific TV
  - regex: '(HbbTV)/(\d+)\.(\d+)\.(\d+) \('

  # must go before Firefox to catch SeaMonkey/Camino
  - regex: '(SeaMonkey|Camino)/(\d+)\.(\d+)\.?([ab]?\d+[a-z]*)'

  # Firefox
  - regex: '(Pale[Mm]oon)/(\d+)\.(\d+)\.?(\d+)?'
    family_replacement: 'Pale Moon (Firefox Variant)'
  - regex: '(Fennec)/(\d+)\.(\d+)\.?([ab]?\d+[a-z]*)'
    family_replacement: 'Firefox Mobile'
  - regex: '(Fennec)/(\d+)\.(\d+)(pre)'
    family_replacement: 'Firefox Mobile'
  - regex: '(Fennec)/(\d+)\.(\d+)'
    family_replacement: 'Firefox Mobile'
  - regex: 'Mobile.*(Firefox)/(\d+)\.(\d+)'
    family_replacement: 'Firefox Mobile'
  - regex: '(Namoroka|Shiretoko|Minefield)/(\d+)\.(\d+)\.(\d+(?:pre)?)'
    family_replacement: 'Firefox ($1)'
  - regex: '(Firefox)/(\d+)\.(\d+)(a\d+[a-z]*)'
    family_replacement: 'Firefox Alpha'
  - regex: '(Firefox)/(\d+)\.(\d+)(b\d+[a-z]*)'
    family_replacement: 'Firefox Beta'
  - regex: '(Firefox)-(?:\d+\.\d+)?/(\d+)\.(\d+)(a\d+[a-z]*)'
    family_replacement: 'Firefox Alpha'
  - regex: '(Firefox)-(?:\d+\.\d+)?/(\d+)\.(\d+)(b\d+[a-z]*)'
    family_replacement: 'Firefox Beta'
  - regex: '(Namoroka|Shiretoko|Minefield)/(\d+)\.(\d+)([ab]\d+[a-z]*)?'
    family_replacement: 'Firefox ($1)'
  - regex: '(Firefox).*Tablet browser (\d+)\.(\d+)\.(\d+)'
    family_replacement: 'MicroB'
  - regex: '(MozillaDeveloperPreview)/(\d+)\.(\d+)([ab]\d+[a-z]*)?'

  # e.g.: Flock/2.0b2
  - regex: '(Flock)/(\d+)\.(\d+)(b\d+?)'

  # RockMelt
  - regex: '(RockMelt)/(\d+)\.(\d+)\.(\d+)'

  # e.g.: Fennec/0.9pre
  - regex: '(Navigator)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Netscape'

  - regex: '(Navigator)/(\d+)\.(\d+)([ab]\d+)'
    family_replacement: 'Netscape'

  - regex: '(Netscape6)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Netscape'

  - regex: '(MyIBrow)/(\d+)\.(\d+)'
    family_replacement: 'My Internet Browser'

  # Opera will stop at 9.80 and hide the real version in the Version string.
  # see: http://dev.opera.com/articles/view/opera-ua-string-changes/
  - regex: '(Opera Tablet).*Version/(\d+)\.(\d+)(?:\.(\d+))?'
  - regex: '(Opera)/.+Opera Mobi.+Version/(\d+)\.(\d+)'
    family_replacement: 'Opera Mobile'
  - regex: '(Opera)/(\d+)\.(\d+).+Opera Mobi'
    family_replacement: 'Opera Mobile'
  - regex: 'Opera Mobi.+(Opera)/(\d+)\.(\d+)'
    family_replacement: 'Opera Mobile'
  - regex: 'Opera Mobi'
    family_replacement: 'Opera Mobile'
  - regex: '(Opera Mini)(?:/att)?/(\d+)\.(\d+)'
  - regex: '(Opera)/9.80.*Version/(\d+)\.(\d+)(?:\.(\d+))?'

  # Opera 14 for Android uses a WebKit render engine.
  - regex: '(?:Mobile Safari).*(OPR)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Opera Mobile'

  # Opera 15 for Desktop is similar to Chrome but includes an "OPR" Version string.
  - regex: '(?:Chrome).*(OPR)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Opera'

  # Palm WebOS looks a lot like Safari.
  - regex: '(hpw|web)OS/(\d+)\.(\d+)(?:\.(\d+))?'
    family_replacement: 'webOS Browser'

  # LuaKit has no version info.
  # http://luakit.org/projects/luakit/
  - regex: '(luakit)'
    family_replacement: 'LuaKit'

  # Snowshoe
  - regex: '(Snowshoe)/(\d+)\.(\d+).(\d+)'

  # Lightning (for Thunderbird)
  # http://www.mozilla.org/projects/calendar/lightning/
  - regex: '(Lightning)/(\d+)\.(\d+)\.?((?:[ab]?\d+[a-z]*)|(?:\d*))'

  # Swiftfox
  - regex: '(Firefox)/(\d+)\.(\d+)\.(\d+(?:pre)?) \(Swiftfox\)'
    family_replacement: 'Swiftfox'
  - regex: '(Firefox)/(\d+)\.(\d+)([ab]\d+[a-z]*)? \(Swiftfox\)'
    family_replacement: 'Swiftfox'

  # Rekonq
  - regex: '(rekonq)/(\d+)\.(\d+)\.?(\d+)? Safari'
    family_replacement: 'Rekonq'
  - regex: 'rekonq'
    family_replacement: 'Rekonq'

  # Conkeror lowercase/uppercase
  # http://conkeror.org/
  - regex: '(conkeror|Conkeror)/(\d+)\.(\d+)\.?(\d+)?'
    family_replacement: 'Conkeror'

  # catches lower case konqueror
  - regex: '(konqueror)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Konqueror'

  - regex: '(WeTab)-Browser'

  - regex: '(Comodo_Dragon)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Comodo Dragon'

  # Bots
  - regex: '(YottaaMonitor|BrowserMob|HttpMonitor|YandexBot|Slurp|BingPreview|PagePeeker|ThumbShotsBot|WebThumb|URL2PNG|ZooShot|GomezA|Catchpoint bot|Willow Internet Crawler|Google SketchUp|Read%20Later)'

  - regex: '(Symphony) (\d+).(\d+)'

  - regex: '(Minimo)'

  # Chrome Mobile
  - regex: '(CrMo)/(\d+)\.(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Chrome Mobile'
  - regex: '(CriOS)/(\d+)\.(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Chrome Mobile iOS'
  - regex: '(Chrome)/(\d+)\.(\d+)\.(\d+)\.(\d+) Mobile'
    family_replacement: 'Chrome Mobile'

  # Chrome Frame must come before MSIE.
  - regex: '(chromeframe)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Chrome Frame'

  # UC Browser
  - regex: '(UCBrowser)[ /](\d+)\.(\d+)\.(\d+)'
    family_replacement: 'UC Browser'
  - regex: '(UC Browser)[ /](\d+)\.(\d+)\.(\d+)'
  - regex: '(UC Browser|UCBrowser|UCWEB)(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'UC Browser'

  # Tizen Browser (second case included in browser/major.minor regex)
  - regex: '(SLP Browser)/(\d+)\.(\d+)'
    family_replacement: 'Tizen Browser'

  # Sogou Explorer 2.X
  - regex: '(SE 2\.X) MetaSr (\d+)\.(\d+)'
    family_replacement: 'Sogou Explorer'

  # Baidu Browsers (desktop spoofs chrome & IE, explorer is mobile)
  - regex: '(baidubrowser)[/\s](\d+)'
    family_replacement: 'Baidu Browser'
  - regex: '(FlyFlow)/(\d+)\.(\d+)'
    family_replacement: 'Baidu Explorer'

  # QQ Browsers
  - regex: '(MQQBrowser/Mini)(?:(\d+)(?:\.(\d+)(?:\.(\d+))?)?)?'
    family_replacement: 'QQ Browser Mini'
  - regex: '(MQQBrowser)(?:/(\d+)(?:\.(\d+)(?:\.(\d+))?)?)?'
    family_replacement: 'QQ Browser Mobile'
  - regex: '(QQBrowser)(?:/(\d+)(?:\.(\d+)\.(\d+)(?:\.(\d+))?)?)?'
    family_replacement: 'QQ Browser'

  # Pingdom
  - regex: '(Pingdom.com_bot_version_)(\d+)\.(\d+)'
    family_replacement: 'PingdomBot'

  # Facebook
  - regex: '(facebookexternalhit)/(\d+)\.(\d+)'
    family_replacement: 'FacebookBot'

  # LinkedIn
  - regex: '(LinkedInBot)/(\d+)\.(\d+)'
    family_replacement: 'LinkedInBot'

  # Twitterbot
  - regex: '(Twitterbot)/(\d+)\.(\d+)'
    family_replacement: 'TwitterBot'

  # Google Plus
  - regex: 'Google.*/\+/web/snippet'
    family_replacement: 'GooglePlusBot'

  # Rackspace Monitoring
  - regex: '(Rackspace Monitoring)/(\d+)\.(\d+)'
    family_replacement: 'RackspaceBot'

  # PyAMF
  - regex: '(PyAMF)/(\d+)\.(\d+)\.(\d+)'

  # Yandex Browser
  - regex: '(YaBrowser)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Yandex Browser'

  # Mail.ru Amigo/Internet Browser (Chromium-based)
  - regex: '(Chrome)/(\d+)\.(\d+)\.(\d+).* MRCHROME'
    family_replacement: 'Mail.ru Chromium Browser'

  # AOL Browser (IE-based)
  - regex: '(AOL) (\d+)\.(\d+); AOLBuild (\d+)'

  #### END SPECIAL CASES TOP ####

  #### MAIN CASES - this catches > 50% of all browsers ####

  # Browser/major_version.minor_version.beta_version
  - regex: '(AdobeAIR|FireWeb|Jasmine|ANTGalio|Midori|Fresco|Lobo|PaleMoon|Maxthon|Lynx|OmniWeb|Dillo|Camino|Demeter|Fluid|Fennec|Epiphany|Shiira|Sunrise|Flock|Netscape|Lunascape|WebPilot|NetFront|Netfront|Konqueror|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|Opera Mini|iCab|NetNewsWire|ThunderBrowse|Iris|UP\.Browser|Bunjalloo|Google Earth|Raven for Mac|Openwave)/(\d+)\.(\d+)\.(\d+)'

  # Outlook 2007
  - regex: 'MSOffice 12'
    family_replacement: 'Outlook'
    v1_replacement: '2007'

  # Outlook 2010
  - regex: 'MSOffice 14'
    family_replacement: 'Outlook'
    v1_replacement: '2010'

  # Outlook 2013
  - regex: 'Microsoft Outlook 15\.\d+\.\d+'
    family_replacement: 'Outlook'
    v1_replacement: '2013'

  # Apple Air Mail
  - regex: '(Airmail) (\d+)\.(\d+)(?:\.(\d+))?'

  # Thunderbird
  - regex: '(Thunderbird)/(\d+)\.(\d+)\.(\d+(?:pre)?)'
    family_replacement: 'Thunderbird'

  # Chrome/Chromium/major_version.minor_version.beta_version
  - regex: '(Chromium|Chrome)/(\d+)\.(\d+)\.(\d+)'

  # Dolphin Browser 
  # @ref: http://www.dolphin.com
  - regex: '\b(Dolphin)(?: |HDCN/|/INT\-)(\d+)\.(\d+)\.?(\d+)?'

  # Browser/major_version.minor_version
  - regex: '(bingbot|Bolt|Jasmine|IceCat|Skyfire|Midori|Maxthon|Lynx|Arora|IBrowse|Dillo|Camino|Shiira|Fennec|Phoenix|Chrome|Flock|Netscape|Lunascape|Epiphany|WebPilot|Opera Mini|Opera|NetFront|Netfront|Konqueror|Googlebot|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|iCab|NetNewsWire|Space Bison|Stainless|Orca|Dolfin|BOLT|Minimo|Tizen Browser|Polaris|Abrowser|Planetweb|ICE Browser|mDolphin)/(\d+)\.(\d+)\.?(\d+)?'

  # Chrome/Chromium/major_version.minor_version
  - regex: '(Chromium|Chrome)/(\d+)\.(\d+)'

  # Browser major_version.minor_version.beta_version (space instead of slash)
  - regex: '(iRider|Crazy Browser|SkipStone|iCab|Lunascape|Sleipnir|Maemo Browser) (\d+)\.(\d+)\.(\d+)'
  # Browser major_version.minor_version (space instead of slash)
  - regex: '(iCab|Lunascape|Opera|Android|Jasmine|Polaris) (\d+)\.(\d+)\.?(\d+)?'

  # Kindle WebKit
  - regex: '(Kindle)/(\d+)\.(\d+)'

  # weird android UAs
  - regex: '(Android) Donut'
    v1_replacement: '1'
    v2_replacement: '2'

  - regex: '(Android) Eclair'
    v1_replacement: '2'
    v2_replacement: '1'

  - regex: '(Android) Froyo'
    v1_replacement: '2'
    v2_replacement: '2'

  - regex: '(Android) Gingerbread'
    v1_replacement: '2'
    v2_replacement: '3'

  - regex: '(Android) Honeycomb'
    v1_replacement: '3'

  # IE Mobile
  - regex: '(IEMobile)[ /](\d+)\.(\d+)'
    family_replacement: 'IE Mobile'
  # desktop mode
  # http://www.anandtech.com/show/3982/windows-phone-7-review
  - regex: '(MSIE) (\d+)\.(\d+).*XBLWP7'
    family_replacement: 'IE Large Screen'

  #### END MAIN CASES ####

  #### SPECIAL CASES ####
  - regex: '(Obigo)InternetBrowser'
  - regex: '(Obigo)\-Browser'
  - regex: '(Obigo|OBIGO)[^\d]*(\d+)(?:.(\d+))?'
    family_replacement: 'Obigo'

  - regex: '(MAXTHON|Maxthon) (\d+)\.(\d+)'
    family_replacement: 'Maxthon'
  - regex: '(Maxthon|MyIE2|Uzbl|Shiira)'
    v1_replacement: '0'

  - regex: 'PLAYSTATION 3.+WebKit'
    family_replacement: 'NetFront NX'
  - regex: 'PLAYSTATION 3'
    family_replacement: 'NetFront'
  - regex: '(PlayStation Portable)'
    family_replacement: 'NetFront'
  - regex: '(PlayStation Vita)'
    family_replacement: 'NetFront NX'
  
  - regex: 'AppleWebKit.+ (NX)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'NetFront NX'
  - regex: '(Nintendo 3DS)'
    family_replacement: 'NetFront NX'

  - regex: '(BrowseX) \((\d+)\.(\d+)\.(\d+)'

  - regex: '(NCSA_Mosaic)/(\d+)\.(\d+)'
    family_replacement: 'NCSA Mosaic'

  # Polaris/d.d is above
  - regex: '(POLARIS)/(\d+)\.(\d+)'
    family_replacement: 'Polaris'
  - regex: '(Embider)/(\d+)\.(\d+)'
    family_replacement: 'Polaris'

  - regex: '(BonEcho)/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Bon Echo'

  # @note: iOS / OSX Applications
  - regex: '(CFNetwork)(?:/(\d+)\.(\d+)\.?(\d+)?)?'
    family_replacement: 'CFNetwork'

  - regex: '(iPod).+Version/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Mobile Safari'
  - regex: '(iPod).*Version/(\d+)\.(\d+)'
    family_replacement: 'Mobile Safari'
  - regex: '(iPhone).*Version/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Mobile Safari'
  - regex: '(iPhone).*Version/(\d+)\.(\d+)'
    family_replacement: 'Mobile Safari'
  - regex: '(iPad).*Version/(\d+)\.(\d+)\.(\d+)'
    family_replacement: 'Mobile Safari'
  - regex: '(iPad).*Version/(\d+)\.(\d+)'
    family_replacement: 'Mobile Safari'
  - regex: '(iPod|iPhone|iPad);.*CPU.*OS (\d+)(?:_\d+)?_(\d+).*Mobile'
    family_replacement: 'Mobile Safari'
  - regex: '(iPod|iPhone|iPad)'
Loading ...