2009-10-08 1 views
6

Sto configurando alcune canalizzazioni di conversione su Google Analytics. Uno è quello di analizzare il traffico che va dal sito principale a un sito promozionale secondario in esecuzione su una directory virtuale (sullo stesso dominio)RegExp alternativa alla corrispondenza lookahead negativa per Google Analytics

Dovrei aggiungere, questo è un modulo di configurazione in Google Analytics, non posso usarne un altro altro codice (PHP, JS, C# ecc) e deve essere fatto in un solo passaggio

Così, per esempio qualcosa come:

  • /default.aspx o /directory/default.aspx oppure /somedirname/default.aspx
  • [a>]
  • /promotion/default.aspx

In regolari terreno di espressione, questo sarebbe:.

  • ^/(?! promozione) (*) .aspx
  • [a>]
  • ^/promozione /(.*). aspx

Il problema è Google Analytics non supporta più lookaheads negativi, quindi l'espressione regolare ^/(?! promozione) (. *). Aspx fallisce. (Reference here, first reply)

C'è un altro modo per farlo?

Molte grazie.

+0

Vedere la mia risposta aggiornata. – Tomalak

risposta

6

Si potrebbe fare un approccio in due fasi (se questo è possibile in Analytics, non ho idea, però):

  1. Sostituire incondizionatamente:
    /(.*\.aspx) --> /promotion/$1
  2. Sostituire ancora:
    /promotion/promotion/(.*) --> /promotion/$1

Se tutto il resto fallisce:

 
^/(?:[^p]|p[^r]|pr[^o]|pro[^m]|prom[^o]|promo[^t]|promot[^i]|promoti[^o]|promotio[^n])/(.*)\.aspx 
+2

grazie Tomalak, ma può essere fatto solo in un passo, usando solo espressioni regolari :( – Darren

+1

La versione "tutto il resto fallisce" ha fatto il trucco per me ... super fastidioso che (?! ...) non funziona però! – Nick

0

Eseguire una corrispondenza su "^/promotion/(.*).aspx" e annullare il risultato.

+1

grazie per il suggerimento Svante, ma deve essere fatto usando puramente regex, non posso negare il risultato utilizzando qualsiasi codice - è solo un campo modulo nella configurazione di conversione di google analytics – Darren