簡體   English   中英

電子郵件的文本挖掘

[英]Text mining of emails

我在文本文件中有一組電子郵件。 我想把屍體從里面取出來。 示例文檔如下所示。

Email: 1
 ===============


  MIME-Version: 1.0
  Received: by 10.68.8.6 with HTTP; Sat, 7 Apr 2012 01:04:45 -0700 (PDT)
  Date: Sat, 7 Apr 2012 13:34:45 +0530
  Delivered-To: twistyprincess22@gmail.com
  Message-ID: <CAGibXq7_Gjqmp=jOCu2X8+Xngb5QuoqqMQ_ZKbu9jHCoJnFYgA@mail.gmail.com>
  Subject: hello
  From: twisty princess <twistyprincess22@gmail.com>
  To: twisty princess <twistyprincess22@gmail.com>
   Content-Type: multipart/alternative; boundary=047d7b33d826e6762004bd1239b5
  --047d7b33d826e6762004bd1239b5            
  Content-Type: text/plain; charset=ISO-8859-1

   hey How are you doing?

   --047d7b33d826e6762004bd1239b5       
    Content-Type: text/html; charset=ISO-8859-1

     <br><br>hey How are you doing?<br>

     --047d7b33d826e6762004bd1239b5--

所以從這段文字中,我只想說“嘿,你好嗎?”。 我希望使用正則表達式和 C# 完成此操作。謝謝

使用正則表達式boundary=([^\s]+)查找邊界名稱

var bname = _boundaryRegex.Match(text).Groups[1].Value;

然后使用bname格式化文本捕獲正則表達式

var textCapturer = new Regex(string.Format("--{0}(?<text>.*?)(?=--)",bname);
foreach(var match in textCapturer.Matches(text))
{
    Console.WriteLine(match.Groups["text"]);
}

它找到boundary參數的值,然后嘗試匹配 --BOUNDARY 行之間的文本。

盡管我不建議您使用正則表達式進行這種解析。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM