Лучший способ, вероятно, просто декодировать строку. Однако, если это действительно необходимо, это можно сделать на лету вместо полного декодирования с последующим поиском. Вам нужно будет реализовать свой единственный поиск и просто декодировать только ту часть, которую вы сейчас проверяете. Это, скорее всего, полезно, только если у вас есть очень очень большие строки, которые вы действительно не хотите (или не можете) хранить дважды в памяти.
Если искомая строка достаточно длинная, вы также можете кодировать эту строку три раза с разными отступами (например, '', 'x' и 'xx') и искать те, у которых нет первых 4 и последних 4 символов (вы не хотите соответствовать отступам). Когда вы найдете совпадение, вы должны убедиться, что выравнивание соответствует заполнению и убедиться, что части, которые вы еще не сопоставили (из-за заполнения), также на месте. Последнее, конечно, требует некоторого декодирования.