Все возможное подстроение строки
public static List<string> SubString(String str)
{
var list = new List<string>();
for (int i = 0; i < str.Length; i++)
{
for (int j = 1; j <= str.Length - i; j++)
{
list.Add(str.Substring(i, j));
}
}
return list;
}
PrashantUnity