2016-03-17 45 views
0

我有一個場景,其中在一個文件夾中我有多個文本文件,在文本文件中有多個標記。我想要標籤FromMailBoxText的值如下所示。此標籤也會在單個文本文件中多次出現。在c中的文本文件中迭代和搜索值#

<FromMailBoxText>[email protected]</FromMailBoxText> 

任何想法我們如何檢索這個。

謝謝, Harshit維爾馬

+0

您可以加載文本文件並使用正則表達式來查找標籤FromMailBoxText的所有行。我在手機上,所以我不能告訴你如何,但如果你熟悉filestreaming和正則表達式可以完成。 –

+1

首先你試過了什麼?其次,「tag」是什麼意思?這只是文件中的一行文字? – juharr

+0

標記爲xml標記 [email protected] Harshit

回答

0

C:\ TEMP包含兩個文件 「A.TXT」 和 「b.txt」 與含有線 「..」

 foreach (var file in Directory.EnumerateFiles(@"c:\temp")) 
     { 
      foreach (Match match in Regex.Matches(File.ReadAllText(file), @"<FromMailBoxText>(?<sender>.*)</FromMailBoxText>")) 
      { 
       Console.WriteLine(match.Groups["sender"].Value); 
      } 
     } 

打印:

[email protected] 
[email protected] 
+0

如果他只想要標記內的值,唯一需要做的就是替換和修剪以便退出標記和空格... – Juan

+0

用@「(。*?)」替換@「^ FromMailBoxText \ s。+」。標籤被stackoverflow編輯器刪除。 –

+0

上述正則表達式方法工作完美,但我還有一個查詢,如果一個字段有一個像 [email protected]的動作值,那麼如何從上述regexquery中恢復動作值。 – Harshit

0

如果您打算解析超過1個標記以獲取值,則可能需要

  1. 的Xml解串器或
  2. 的XmlReader讀取值
  3. 做什麼@Marius說,正則表達式
  4. 使用ANTLR 讀出的值,並創建你的語法閱讀在你所需要的格式需要什麼