Если вам нужно именно узнать позиции вхождений совпадающих подпоследовательностей, то скорее всего придётся писать свой парсер. Могу посоветовать изучить конечные автоматы, как универсальный способ решения подобных задач (регулярные выражения - это тоже подмножество конечных автоматов). Так же советую погуглить что-то типа "wildcard parsing" - ваша задача очень похожа на стандартные маски.