2010-03-23 3 views
9

Es ist nicht 100% ig klar, dass die Google Analytics UA-Nummern immer 6 Ziffern, ein Bindestrich und 2 Ziffern umfassen, wie Google in ihren Dokumenten häufig erwähnt. Es gibt häufige Gegenbeispiele, die weniger als 6 für das Konto und 1-4 für das Profil verwenden. Alle Beispiele zeigen immer Zahlen, aber es ist nicht einmal klar, dass sie keine Buchstaben sein können.Regelmäßiger Ausdruck zur Validierung einer Google Analytics-UA-Nummer

Weiß jemand, ob Google eine Regex veröffentlicht hat, die genau den zulässigen UA-Nummern entspricht? Ich füge diese Funktion der Admin-Konsole einer Anwendung hinzu, an der ich arbeite, und möchte die Benutzereingabe validieren.

Antwort

21

Möglicherweise gibt es keinen festen Ziffernbereich. 6 Ziffern für die Kontonummer würden Google auf 1.000.000 Benutzer beschränken. Ich bin mir sicher, Google zielt darauf ab. Diese Google Analytics FAQ item zeigt UA-xxxxxxx-y als Beispielkontonummer (7 + 1 Ziffern). Ich nehme an, dass nur die UA und die Bindestriche festgelegt sind und dass die Anzahl der Stellen mit der Anzahl der Benutzer und Profile wächst. Z.B. 4 bis 10 Ziffern für den Benutzer und 1 bis 4 Ziffern für das Profil, damit Sie diesen Perl-Stil regex verwenden:

\bUA-\d{4,10}-\d{1,4}\b 

Wenn es mit den begrenzten Google Analytics regex syntax hat zu arbeiten versuchen, diese:

UA-[0-9]+-[0-9]+ 
+0

Ja, ich sagte, es war 6, weil ich nicht gezählt habe, nur einen kurzen Blick. : p Ich habe mich auch auf den zweiten Regex gelehnt, war mir aber nicht sicher, ob sie Buchstaben zulassen. – Otis

+3

Carlo in diesem Thread http://carlorizzante.com/2011/sanitize-the-google-analytics-tracking-code/ besagt, dass UA-1234567 immer noch eine gültige ID ist. Ich würde eher konservativ sein und versuchen, einen möglicherweise gültigen Code nicht abzulehnen, also werde ich verwenden: \ bUA- \ d {4,10} (- \ d {1,4})? \ B – ThisGuy

+0

Schön, '/ \ BUA- \ d {4,10} - \ d {1,4} \ b /' funktioniert bewundernswert für: Format in Ruby-Validatoren. Vielen Dank! –