2016-11-10 2 views
0

Ich bin gespannt, was /i ist in:Was ist/i in navigator.userAgent.match

var isMobile = { 
    Android: function() { 
     return navigator.userAgent.match(/Android/i); 
    }, 
    BlackBerry: function() { 
     return navigator.userAgent.match(/BlackBerry/i); 
    }, 
    iOS: function() { 
     return navigator.userAgent.match(/iPhone|iPad|iPod/i); 
    }, 
    Opera: function() { 
     return navigator.userAgent.match(/Opera Mini/i); 
    }, 
    Windows: function() { 
     return navigator.userAgent.match(/IEMobile/i); 
    }, 
    any: function() { 
     return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows()); 
    }}; 
} 

Quelle: https://www.sitepoint.com/navigator-useragent-mobiles-including-ipad/

Könnte mir jemand sagen, was /i genau ist? Ich habe eine Menge von Websites für Dinge, über die navigator.userAgent.Match gesucht, aber keiner erklären, was /i ist, manchmal auch ist es /g

+1

Case-unempfindliche Flagge an der aktuellen Position im Zielstring Spiele beginnen. Also stimmt das Muster mit * Android *, * androiD * oder * anDrOid * usw. überein. –

+0

also/i bedeutet, dass es für Groß- und Kleinbuchstaben nicht empfindlich ist, aber kann ich/i durch irgendein anderes Zeichen ersetzen? – Gerwin

+0

Nein, das geht nicht. Das ist es von Entwurf. –

Antwort

1

/heregoesregex/flags für Regular Expression in vielen Sprachen wörtliche (einschließlich JavaScript). Nach dem letzten Schrägstrich können Sie Flags für den regulären Ausdruck angeben. Liste der verfügbaren Flags für Javascript beinhaltet:

  • g globale Suche.
  • i Suche ohne Berücksichtigung der Groß-/Kleinschreibung.
  • m Mehrzeilige Suche.
  • y "sticky" Suche, die
+2

Beachten Sie, dass ES6 auch '/ u' für die Unicode-Unterstützung unterstützt. –