Каков наилучший способ проверки, если StringA = StringB с другим StringC, вставленным в произвольную точку?
Например, учитывая abcdef
и abcXYZdef
, я хочу найти, что abcXYZdef
- это abcdef
с XYZ
, вставленным в положение 4.
С другой стороны, учитывая abcdef
и abRSTcdXYZef
, я хочу найти, что первая строка не может быть превращена во вторую только с одной вставкой.
Я знаю, что могу пройтись по символам StringA с обоих концов и проверить, охватывает ли он весь StringB, но написать это было бы довольно утомительно. Также было бы довольно медленно делать это в Python (в котором я работаю), и я бы не стал писать специальное C-расширение только для этого.
Есть ли какие-нибудь умные вещи, которые я могу сделать с помощью Regex или других стандартных функций манипуляции со строками, которые могут сделать это для меня?
edit: чтобы уточнить, StringC полностью неизвестен; Может даже не быть действительного StringC, и я хочу знать, так ли это.