2016-01-29 97 views
-1

我有c#中的字符串文本,我試圖讓我的表達式之前的所有單詞eachDELETEDDELETED,我想將它們變成一個列表或數組。有人可以幫助正則表達式部分。正則表達式在字符串之前獲取文本

文本樣本: word word word word word word 20 word-16S eachDELETEDDELETEDword word word word word word 20 word-16z1 (size 26), eachDELETEDDELETED

Regex ry = new Regex(@"eachDELETEDDELETED"); 
MatchCollection matchList = Regex.Matches(extracted, ry.ToString()); 
var list = matchList.Cast<Match>().Select(match => match.Value).ToList(); 

foreach (string s in list) 
{ 
    richTextBox2.Text += s + "\n"; 
} 
+0

你一個字(很多時間在一個文本)「eachDELETEDDELETED」前或「eachDELETEDDELETED」前一組字 –

+0

組詞,然後「eachDELETEDDELETED」的再組詞,然後「eachDELETEDDELETED」的..等 –

+0

燦你給我們提供了一個文本樣本,這樣我可以在我身邊測試嗎? –

回答

1

只需使用Regex.Split:

string example = "word word word word word word 20 word-16S eachDELETEDDELETEDword word word word word word 20 word-16S eachDELETEDDELETED"; 
string[] parts = Regex.Split(example, "eachDELETEDDELETED"); 
foreach(string part in parts) 
{ 
    Console.WriteLine(part); 
} 

將輸出:

word word word word word word 20 word-16S 
word word word word word word 20 word-16S 
+1

我不知道吐口水的方法,謝謝你的幫助! –

0

僅供參考,這也可以用做前瞻和\G主播:

^|\G(?:([-\w]+)\s*)(?!(?:eachDELETEDDELETED)) 

請參閱a demo on regex101.com

相關問題