C#で正規表現を使用する方法はありますが、(Regex.Matchを使用して)正規表現の一部のみを返しますか?例えば、
string input = "Hello my friend!";
string pattern = "\\w+ my friend.";
Console.WriteLine(Regex.Match(input, pattern)); //Returns "Hello my friend!"
しかし、「こんにちは」、または最後の句読点だけが必要な場合はどうなりますか?^\\w+
「 」(または単に.split(' ')[0]
)のようなことができることはわかっていますが、それは任意の入力の最初の単語と一致し、残りが「my friend.
」と一致する場合にのみ最初の単語と一致するようにします。これを行うための任意の方法、またはそれを行うだけの方が簡単でしょうか
string input = "Hello my friend!";
string pattern = "\\w+ my friend.";
if (Regex.IsMatch(input, pattern))
{
Console.WriteLine(input.Split(' ')[0]);
}
else
{
Console.WriteLine("");
}
(これが本当に単純な場合、または何かが足りない場合は、申し訳ありませんが、Regexsを実際に使い始めたばかりです)
ありがとう、
マシュー