我有一个包含多个退格字符 ( ^H
) 的文件。我希望能够在 perl 中“应用”这些退格键。我找到了一些解决方案,但没有一个对我有用。关键是这一行:
test>>M^H ^HManagement.^H^H^H^H^H^H^H^H^H^Hanagement.F^H ^HFiles.^H^H^H^H^Hiles.s^H ^Hs.^H ^Hc^H ^H^H ^Hscript.^H ^H^H^H^H^Hripts^H ^H^H ^H^H ^H^H ^H^H ^H^H ^H^H ^Hscripts.^H.s^H ^Hshow_file ^H^H^H^H^H^H^H^H^Hhow_file = transform_factory_to_running^M
结果应如下所示:
test>>Management.Files.scripts.show_file = transform_factory_to_running^M
在 vi 中,我能够按照https://stackoverflow.com/a/1298728/2837411中的建议正确转换文本。但是 perl 解决方案,也在这个问题中提出:https: //stackoverflow.com/a/1298970/2837411 对我不起作用(使用 $_
):
s{([^\x08]+)(\x08+)}{substr$1,0,-length$2}eg;
输出是:
test>>Management.Files.sscriptriptscripts.show_file = transform_factory_to_running^M
所有退格都消失了,但看起来好像其中一些退格被应用到另一个退格?!