Conflict graph may help. Positions of possible substrings are vertices and two positions conflict if they can not be simultaneously. Answer= max number of independent vertices. Also let relation a<b means that position is before of position b and they don't conflict.Then a<b,b<c=> a<c so we have an order. Answer is a height of ordered structure.