using System;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
var s = "adj 1: text1 2: text2 n 1: text4 adj 1: text5 adv 1: text6 3: text7";
var block = @"(?:[nv]|ad[vj])?\s*\d+:";
var pat = string.Format(@"{0}.*?\s*(?={0})", block);
Console.Write(Regex.Replace(s, pat, "$&\n"));
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJdmFyIHMgPSAiYWRqIDE6IHRleHQxIDI6IHRleHQyIG4gMTogdGV4dDQgYWRqIDE6IHRleHQ1IGFkdiAxOiB0ZXh0NiAzOiB0ZXh0NyI7CgkJdmFyIGJsb2NrID0gQCIoPzpbbnZdfGFkW3ZqXSk/XHMqXGQrOiI7CgkJdmFyIHBhdCA9IHN0cmluZy5Gb3JtYXQoQCJ7MH0uKj9ccyooPz17MH0pIiwgYmxvY2spOwoJCUNvbnNvbGUuV3JpdGUoUmVnZXguUmVwbGFjZShzLCBwYXQsICIkJlxuIikpOwoJfQp9