using System;
using System.Linq;
using System.Collections.Generic;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var text = "[(Hello) <world>;.,]++--\t\"'";
var result = Regex.Replace(text, @"([][()<>])|(\+\+|--)|[""'\t;.,]", m =>
m.Groups[1].Success ? $" {m.Groups[1].Value} " :
m.Groups[2].Success ? $" {m.Groups[2].Value}" : "")
.Replace("[", "(").Replace("]", ")");
Console.WriteLine(result);
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CnVzaW5nIFN5c3RlbS5UZXh0LlJlZ3VsYXJFeHByZXNzaW9uczsKCnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKCQl2YXIgdGV4dCA9ICJbKEhlbGxvKSA8d29ybGQ+Oy4sXSsrLS1cdFwiJyI7CgkJdmFyIHJlc3VsdCA9IFJlZ2V4LlJlcGxhY2UodGV4dCwgQCIoW11bKCk8Pl0pfChcK1wrfC0tKXxbIiInXHQ7LixdIiwgbSA9PgoJCQltLkdyb3Vwc1sxXS5TdWNjZXNzID8gJCIge20uR3JvdXBzWzFdLlZhbHVlfSAiIDogCgkJCW0uR3JvdXBzWzJdLlN1Y2Nlc3MgPyAkIiB7bS5Hcm91cHNbMl0uVmFsdWV9IiA6ICIiKQoJCQkuUmVwbGFjZSgiWyIsICIoIikuUmVwbGFjZSgiXSIsICIpIik7CgkJQ29uc29sZS5Xcml0ZUxpbmUocmVzdWx0KTsgCgl9Cn0=