using System.Collections.Generic;
public static void Main()
List<string> phrases = new List<string>();
string phrase = "e^wa^ko^pacz";
var phraseParts = phrase.Split('^');
phrases.Add(string.Join(string.Empty, phraseParts));
phrases.Add(string.Join(" ", phraseParts));
for(int i = 0; i< phrase.Count(p=>p == '^'); i++)
var workingPhrase = phrases[0];
position = phrase.IndexOf('^',position +1);
phrases.Add(workingPhrase.Insert(position - i ," "));
foreach(string phr in phrases){