我从一个telnet客户端收到了一个字符串。这个字符串包含退格字符,我需要应用它们。每个退格都应该删除之前输入的一个字符。
我尝试使用正则表达式在单个替换中完成此操作:
string txt = "Hello7\b World123\b\b\b";
txt = Regex.Replace(txt, ".\\\b", "", RegexOptions.ECMAScript);
这会导致输出"Hello World12"。当然,我希望"12"也被移除,但它显然不匹配我的表达式。
某种程度上讲,应该重复替换直到没有更多匹配为止。有没有办法用一个正则表达式实现这个目标?