0

テキストがあり、テキストの各行で同じメソッドを実行したいと考えています。私の問題は、テキストが1つの長い行(db)の例に並んでいないことです:

string text = "dog aa aa aa aa dog bb bb bb bb dog cc cc cc cc dog dd dd dd dd dog"  

「犬」という単語の間で毎回メソッドを実行したいのですが、

1. aa aa aa aa
でプリフォーム 2. bb bb bb bb
でプリフォーム 3. cc cc cc cc
でプリフォーム 4. dd dd dd dd でプリフォーム

ありがとう :)

4

3 に答える 3

0
int i = 0
for(string[] arr = text.Split("dog"); i < arr.Count; i++)
{
method(arr[i]);
}
于 2013-02-10T14:55:34.840 に答える
0

どうですか:

var text = "dog aa aa aa aa dog bb bb bb bb dog cc cc cc cc dog dd dd dd dd dog";
var lines = text.Split(new string[] { "dog" }, StringSplitOptions.RemoveEmptyEntries);
foreach (var line in lines)
    Console.WriteLine(x);
于 2013-02-10T14:55:36.273 に答える
0

System.Text.RegularExpressions では、静的 RegEx.Split メソッドを使用して次のようなことを行うことができます。

string[] list = Regex.Split(text, @"dog");
foreach (string s, list)
{
    Console.WriteLine(s);
}

または、ForEach メソッドを使用できます。

Regex.Split(text, @"dog").ToList().ForEach(s => Console.WriteLine(s));
于 2013-02-10T15:02:27.050 に答える