次のコードがあるとします。
var myList = new List<string> { "red shirt", "blue", "green", "red" };
Regex r = new Regex("\\b(" + string.Join("|", myList.ToArray()) + ")\\b");
MatchCollection m = r.Matches("Alfred has a red shirt and blue tie");
これらはすべて文字列m
に含まれているため、 の結果を含めたいのですが、取得しているのは. オーバーラップを含めるにはどうすればよいですか?"red shirt", "blue", "red"
"red shirt", "blue"