using uCalcSoftware; var uc = new uCalc(); // Create a transformer with a custom comment token definition var t_source = new uCalc.Transformer(); var commentToken = t_source.Tokens.Add(""" /\*([\s\S]*?)\*/ """, TokenType.Whitespace); commentToken.Description = "C-style block comment"; // Create a second transformer that will do replacements var t_replacer = new uCalc.Transformer(); t_replacer.FromTo("secret", "REDACTED"); var sourceText = "a secret /* contains another secret */ value"; Console.WriteLine("--- Before Importing Comment Token ---"); // Without knowing about comments, t_replacer incorrectly modifies the text inside the comment. Console.WriteLine(t_replacer.Transform(sourceText)); Console.WriteLine(""); Console.WriteLine("--- After Importing Comment Token ---"); // Import the comment token definition. Now, the comment block is treated as a single whitespace token. t_replacer.Tokens.Add(commentToken); // The transformer must be reset with the original text for the new token to apply. t_replacer.Text = sourceText; Console.WriteLine(t_replacer.Transform());