>>898
補足

>「abで始まる」
>「abで始まり、cdで終わる」

この部分は何が言いたいかというと
この「始まる」「始まり」の活用をするだけでも
単純な文字列の一括置換ではすぐ壁につきあたってしまうので
そういう「場合分けである程度複雑な処理をするなら」
プログラムを組む必要があるというわけです

言語はある程度メジャーなら何でもいいです
Java、C#、Python、Ruby……など