テキストから 3 つの単語を取得するには、正規表現を作成する必要があります。単語は 1 つのスペースで区切られます。そして、すべてのシーケンスを提供するわけではないコードを書きました。たとえば、テキスト「ワン ツー スリー フォー ファイブ シックス」の場合、1.ワン ツー スリー 2.フォー ファイブ シックスの 2 つのシーケンスしか得られません。しかし、正規表現ですべてのシーケンスを取得したいので、出力は 1.one two three 2.two three four 3.three four Five. 4.四五六。私の正規表現の何が問題なのか誰か教えてもらえますか? これが私のコードです:
string input = "one two three four five six";
string pattern = @"([a-zA-Z]+ ){2}[a-zA-Z]+";
Regex rgx = new Regex(pattern, RegexOptions.IgnoreCase);
MatchCollection matches = rgx.Matches(input);
if (matches.Count > 0)
{
Console.WriteLine("{0} ({1} matches):", input, matches.Count);
Console.WriteLine();
foreach (Match match in matches)
Console.WriteLine(match.Value);
}
Console.ReadLine();