Поиск вставки в строку

Как лучше всего проверить, если StringA = StringB с другим StringC, вставленным в произвольную точку?

Например, для abcdef и abcXYZdef , я хочу найти, что abcXYZdef равно abcdef с XYZ ] вставлен в позицию 4.

С другой стороны, учитывая abcdef и abRSTcdXYZef , я хочу обнаружить, что первая строка не может быть преобразована в во-вторых, только с одной вставкой.

Я знаю, что могу перебирать StringA символ за символом с обоих концов и проверять, покрывает ли он весь StringB, но это было бы довольно утомительно писать. Также было бы довольно медленно делать это в Python (с которым я работаю), и я бы предпочел не писать специальное C-расширение только для этого.

Есть ли какие-нибудь умные вещи, которые я могу сделать с Regex или другой стандартной строкой -функции манипуляции, которые могут сделать это за меня?

edit: Чтобы уточнить, StringC полностью неизвестен; Может даже не быть действительного StringC, и я хочу знать, так ли это.

8
задан Li Haoyi 2 August 2011 в 21:58
поделиться