using System.Text.RegularExpressions;
public static void Main()
string input = "sample DD81UN DN55 1PT WRONG text 123456";
Regex r = new Regex(@"\b([A-PR-UWYZ](?:(?:\d{1,2}|\d[A-HJ-KSTUW])|(?:[A-HK-Y]\d(?:\d|[A-Z])?)))\s?(\d[ABD-HJLNP-UW-Z]{2})\b");
string output = r.Replace(input, "$1 $2");
Console.WriteLine(output);
var results = r.Matches(output);
foreach(var result in results) {
Console.WriteLine(result);