using System;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
string s = "A B C C B C A D ABCD";
foreach (Match m in Regex.Matches(s, @"\b(\w+)\b(?=(?>.*?\b\1\b)(?!.*\b\1\b))(?<!\b\1\b.+)", RegexOptions.IgnoreCase))
Console.WriteLine(m.Value);
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CiAgcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQogIHsKICAgIHN0cmluZyBzID0gIkEgQiBDIEMgQiBDIEEgRCBBQkNEIjsKICAgIAogICAgZm9yZWFjaCAoTWF0Y2ggbSBpbiBSZWdleC5NYXRjaGVzKHMsIEAiXGIoXHcrKVxiKD89KD8+Lio/XGJcMVxiKSg/IS4qXGJcMVxiKSkoPzwhXGJcMVxiLispIiwgUmVnZXhPcHRpb25zLklnbm9yZUNhc2UpKQogICAgICBDb25zb2xlLldyaXRlTGluZShtLlZhbHVlKTsKICB9Cn0=