2016-07-14 9 views
1

大文字の長い文字列を持つ大きなテキストファイルがあります。私の目標は、 "personEmail"と "created"の間にあるすべての電子メールアドレスを抽出することです。ファイルには他の電子メールがありますが、その特定のものだけが必要です。長い文字列から電子メールを取得する

GFyazovL3VzL1BFT1BMRS9mNWQzMGMyYi1mZDMyLTRhYTYtYjZhYS1iYTdkYWNjZWZiN2M「 『personEmail』: 『[email protected]』、 『作成した私は、テキストファイル内の各メールアドレスのoccurancesの数をカウントしたいと思い、以下の抽出物です』:」 2016-07-13T19:19:14.934Z " "HTML": "何とか-言及データ・オブジェクト・タイプ= \" 人の\" データ-OBJECTID = [email protected]M4LTQzNDAtOWE2ZC0xMmRmYzI5YWU5

"\

私がいました可能であればgrepsed、またはawkで達成することを望んでおり、可能であればuniq -cと数えます。を使用してこれを行う方法はわかります複数の文字列がある場合はになりますが、ファイルが実際には1つの実際に長い文字列である場合はそうではありません。これにはすばやい解決策がありますか?

+0

にマッチし、あなたはこの正規表現にメールを一致させることができます: 'persoあなたはあなたが望むように電子メールの正規表現を改善するかもしれません、そこにたくさんのサンプルがあります。) "(\ w + @(?:\ w + \) – Alfeu

答えて

1

説明

(?<="personEmail":")[^"]+(?=") 

Regular expression visualization

**単に右この正規表現は、次の操作を実行します画像をクリックすると新しいウィンドウで

をビューを選択し、良好な画像を表示するには:

  • UE

ライブデモ

https://regex101.com/r/aH1nO9/2

personEmail分野に関連するサンプルテキスト

GFyazovL3VzL1BFT1BMRS9mNWQzMGMyYi1mZDMyLTRhYT 「yaYZZhYS1iYTdkYWNjZWZiN2M」、「personEmail」:「[email protected]」、「created」:「2016-07-13T19:19:14.934Z」、「html」:「blah-mentionデータオブジェクトタイプ= "データ-OBJECTID = \" [email protected]M4LTQzNDAtOWE2ZC0xMmRmYzI5YWU5

サンプルはあなたのサンプルテキストを1として

MATCH 1 
0. [87-105] `[email protected]` 

説明

NODE      EXPLANATION 
-------------------------------------------------------------------------------- 
    (?<=      look behind to see if there is: 
-------------------------------------------------------------------------------- 
    "personEmail":"   '"personEmail":"' 
-------------------------------------------------------------------------------- 
)      end of look-behind 
-------------------------------------------------------------------------------- 
    [^"]+     any character except: '"' (1 or more times 
          (matching the most amount possible)) 
-------------------------------------------------------------------------------- 
    (?=      look ahead to see if there is: 
-------------------------------------------------------------------------------- 
    "      '"' 
-------------------------------------------------------------------------------- 
)      end of look-ahead 
関連する問題