2016-12-16 27 views
1

私の正規表現のスキルは、最高でナイーブです。 Google Analyticsにレポートを生成しようとしています。文字列を含むGAの正規表現

  • URLは後の本」を持つべきもので始めることができ

    • URL:

      (.+)/book/<contains the case insensitive word 'test'> 
      

      これは、に変換します。私は、次の基準を満たしているURLに、このレポートをフィルタしたいと思います最初の/

    • URLには、大文字と小文字を区別しないキーワード 'test'が含まれていなければなりません。/。受け入れ可能なURLの

      (.+)/book/(\btest\b) 
      

      例:

      http://website.com/book/Biology-Tests/section/2.6/

      を私は次のように使用してみましたが、それはうまくいきませんでしたキーワード「試験」の前と後の

    文字があるかもしれません

    http://website.com/book/Geometry-Test/section/3.9/

    大変感謝しています。

  • +0

    を必要な文字列の例をいくつか教えてください。 – rawatdeepesh

    +0

    '^/book /(?i)。* test'を試してください。 –

    +0

    @WiktorStribiżewこれらは両方とも無効な式 – Patthebug

    答えて

    1

    あなたは

    ^/book/.*[tT][Ee][Ss][Tt] 
    

    を使用することができますそれは右のホスト部分の後book(大文字と小文字を区別)サブパスが含まれ、その後、任意の0+文字(.*)の後に大文字小文字を区別しない言葉が含まれているURLに一致します。 test。単語testが単語全体でなければならない場合は、ワード境界で囲みます(^/book/.*\b[tT][Ee][Ss][Tt]\b)。

    testtestsに一致するように、\bのみ単語の前で使用することができる注

    ^/book/.*\b[tT][Ee][Ss][Tt] 
    

    または後続のワード境界の前に、オプションのサブパターンを使用する:

    ^/book/.*\b[tT][Ee][Ss][Tt][sS]?\b 
              ^^^^^^^ 
    
    +1

    [regex101](https://regex101.com/r/za2o3a/1)と[Google Analytics Regular Expression Tester](http://www.analyticsmarket.com/freetools/regex-tester)の両方でテスト済みです。 –

    +0

    ありがとう、これは動作します。楽しいファクト:Google Analyticsでは大文字と小文字の区別がありません。正方形のバースを使わずに、単に「テスト」を使って動作させることができました。 – Patthebug

    +0

    ああ、GAの正規表現テスト担当者も '[] 'なしでマッチするので、真実だと思います。 GAパターンのリテラル文字列は大文字と小文字を区別しないようですが、charを '[]'で囲むと大文字と小文字が区別されます( '[t] [e] [s] [t]'は 'test '、' Test'ではなく)。いくつかのすてきな説明を見つけました(http://www.shimonsandler.com/regex-in-google-analytics/)。 –

    関連する問題