using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var exceptions = new[] { "and", "not", "or" };
Console.WriteLine($@"\b(?!(?:{string.Join("|", exceptions)})\b)\w+");
var result = Regex.Replace("This and This not That",
$@"\b(?!({string.Join("|", exceptions)})\b)\w+",
"\"$&\"");
Console.WriteLine(result);
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLklPOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLlRleHQuUmVndWxhckV4cHJlc3Npb25zOwoKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewoJCXZhciBleGNlcHRpb25zID0gbmV3W10geyAiYW5kIiwgIm5vdCIsICJvciIgfTsKCQlDb25zb2xlLldyaXRlTGluZSgkQCJcYig/ISg/OntzdHJpbmcuSm9pbigifCIsIGV4Y2VwdGlvbnMpfSlcYilcdysiKTsKICAgIAl2YXIgcmVzdWx0ID0gUmVnZXguUmVwbGFjZSgiVGhpcyBhbmQgVGhpcyBub3QgVGhhdCIsIAogICAgCQkkQCJcYig/ISh7c3RyaW5nLkpvaW4oInwiLCBleGNlcHRpb25zKX0pXGIpXHcrIiwKICAgIAkJIlwiJCZcIiIpOwogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKHJlc3VsdCk7Cgl9Cn0=