using System;
using System.Linq.Expressions;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
string pattern = @"([A-Za-z0-9.]+)|#([^#]+)#|\[([^][]+)]";
string input = @"add galaxy [Milky way] elliptical 13.2B #test test #";
string[] items = Regex.Split(input, pattern).Where(x => !string.IsNullOrWhiteSpace(x)).ToArray();
foreach (string item in items)
{
Console.WriteLine(item);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucS5FeHByZXNzaW9uczsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CnVzaW5nIFN5c3RlbS5MaW5xOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJc3RyaW5nIHBhdHRlcm4gPSBAIihbQS1aYS16MC05Ll0rKXwjKFteI10rKSN8XFsoW15dW10rKV0iOwoJCXN0cmluZyBpbnB1dCA9IEAiYWRkIGdhbGF4eSBbTWlsa3kgd2F5XSBlbGxpcHRpY2FsIDEzLjJCICN0ZXN0IHRlc3QgIyI7CgkJc3RyaW5nW10gaXRlbXMgPSBSZWdleC5TcGxpdChpbnB1dCwgcGF0dGVybikuV2hlcmUoeCA9PiAhc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZSh4KSkuVG9BcnJheSgpOwoJCQoJCWZvcmVhY2ggKHN0cmluZyBpdGVtIGluIGl0ZW1zKQoJCXsKCQkgICAgQ29uc29sZS5Xcml0ZUxpbmUoaXRlbSk7CgkJfQoJfQp9