Wyrażenie regularne do stosowania znaków cofania

Mam ciąg pochodzący od klienta telnet. Ten ciąg zawiera znaki cofania, które muszę zastosować. Każde cofnięcie powinno usunąć jeden wcześniej wpisany znak.

Próbuję to zrobić w pojedynczym zastąpieniu za pomocą wyrażenia regularnego:

string txt = "Hello7\b World123\b\b\b";
txt = Regex.Replace(txt, ".\\\b", "", RegexOptions.ECMAScript);

Co powoduje „Hello World12”. Oczywiście chcę, aby usunięto także „12”, ale oczywiście nie pasuje to do mojego wyrażenia.

W pewien sposób powinno się powtórzyć zastępowanie, dopóki nie będzie już więcej dopasowań. Jakieś pomysły, jak to osiągnąć za pomocą pojedynczego wyrażenia regularnego?

questionAnswers(2)

yourAnswerToTheQuestion