using System;
using System.Text.RegularExpressions;
using System.Collections.Specialized;
class Program
{
static void Main() {
var myRegex = new Regex(@"IgnoreFunction\s*(['""])[^']*\1|AlsoIgnoreFunction\[[^\]]*\]|(ANDALSO|ORELSE)");
string s1 = @"SomeVar ANDALSO SomeOTherVar ANDALSO AnotherVar = 1234 IgnoreFunction 'SomeVar=ANDALSO AnotherVar'
AlsoIgnoreFunction['test=value', 'anotherTest = ANDALSO anotherValue'] ORELSE ANDALSO";
string replaced = myRegex.Replace(s1, delegate(Match m) {
if (m.Groups[2].Value == "ANDALSO") return "&&";
else if (m.Groups[2].Value == "ORELSE") return "||";
else return m.Value;
});
Console.WriteLine("\n" + "*** Replacements ***");
Console.WriteLine(replaced);
Console.WriteLine("\nPress Any Key to Exit.");
Console.ReadKey();
} // END Main
} // END Program
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CnVzaW5nIFN5c3RlbS5Db2xsZWN0aW9ucy5TcGVjaWFsaXplZDsKY2xhc3MgUHJvZ3JhbQp7CnN0YXRpYyB2b2lkIE1haW4oKSAgewp2YXIgbXlSZWdleCA9IG5ldyBSZWdleChAIklnbm9yZUZ1bmN0aW9uXHMqKFsnIiJdKVteJ10qXDF8QWxzb0lnbm9yZUZ1bmN0aW9uXFtbXlxdXSpcXXwoQU5EQUxTT3xPUkVMU0UpIik7CnN0cmluZyBzMSA9IEAiU29tZVZhciBBTkRBTFNPIFNvbWVPVGhlclZhciBBTkRBTFNPIEFub3RoZXJWYXIgPSAxMjM0IElnbm9yZUZ1bmN0aW9uICdTb21lVmFyPUFOREFMU08gQW5vdGhlclZhcicKQWxzb0lnbm9yZUZ1bmN0aW9uWyd0ZXN0PXZhbHVlJywgJ2Fub3RoZXJUZXN0ID0gQU5EQUxTTyBhbm90aGVyVmFsdWUnXSBPUkVMU0UgQU5EQUxTTyI7CgpzdHJpbmcgcmVwbGFjZWQgPSBteVJlZ2V4LlJlcGxhY2UoczEsIGRlbGVnYXRlKE1hdGNoIG0pIHsKICAgIGlmIChtLkdyb3Vwc1syXS5WYWx1ZSA9PSAiQU5EQUxTTyIpIHJldHVybiAiJiYiOwogICAgZWxzZSBpZiAobS5Hcm91cHNbMl0uVmFsdWUgPT0gIk9SRUxTRSIpIHJldHVybiAifHwiOwogICAgZWxzZSByZXR1cm4gbS5WYWx1ZTsKICAgIH0pOwpDb25zb2xlLldyaXRlTGluZSgiXG4iICsgIioqKiBSZXBsYWNlbWVudHMgKioqIik7CkNvbnNvbGUuV3JpdGVMaW5lKHJlcGxhY2VkKTsKCgpDb25zb2xlLldyaXRlTGluZSgiXG5QcmVzcyBBbnkgS2V5IHRvIEV4aXQuIik7CkNvbnNvbGUuUmVhZEtleSgpOwoKfSAvLyBFTkQgTWFpbgp9IC8vIEVORCBQcm9ncmFt