我想清除一些使用python和regex从我的键盘记录的输入。 特别是当退格被用来修复一个错误。匹配相同数量的字符重复次数作为捕获组的重复次数
例1:
[in]: 'Helloo<BckSp> world'
[out]: 'Hello world'
这可以用
re.sub(r'.<BckSp>', '', 'Helloo<BckSp> world')
例2进行:
然而,当我有几个退格,我不知道如何删除一模一样的号码之前的字符:
[in]: 'Helllo<BckSp><BckSp>o world'
[out]: 'Hello world'
(这里I w蚂蚁在两个退格前删除'l'和'o')。
我可以简单地使用re.sub(r'[^>]<BckSp>', '', line)
几次,直到没有<BckSp>
左侧,但我想找到一个更优雅/更快的解决方案。
有谁知道如何做到这一点?
我认为你不能用正则表达式计算,并通过你们正则表达式循环的建议是 – Fallenhero
是使用正则表达式的要求(即你正在学习正则表达式),或者只是你提出的解决方案的最佳方式是什么? –
是的我尝试使用正则表达式学习,因为我还不熟悉它。 –