相关疑难解决方法(0)

Python用函数输出替换字符串模式

我说Python中有一个字符串 The quick @red fox jumps over the @lame brown dog.

我试图用一个@以单词作为参数的函数的输出替换每个开头的单词.

def my_replace(match):
    return match + str(match.index('e'))

#Psuedo-code

string = "The quick @red fox jumps over the @lame brown dog."
string.replace('@%match', my_replace(match))

# Result
"The quick @red2 fox jumps over the @lame4 brown dog."
Run Code Online (Sandbox Code Playgroud)

有一个聪明的方法来做到这一点?

python regex

52
推荐指数
3
解决办法
2万
查看次数

匹配相同数量的重复字符作为捕获组的重复

我想清理一些使用python和regex从键盘记录的输入.特别是当使用退格键来修复错误时.

例1:

[in]:  'Helloo<BckSp> world'
[out]: 'Hello world'
Run Code Online (Sandbox Code Playgroud)

这可以通过以下方式完成

re.sub(r'.<BckSp>', '', 'Helloo<BckSp> world')
Run Code Online (Sandbox Code Playgroud)

示例2:
但是当我有几个退格键时,我不知道如何删除完全相同数量的字符:

[in]:  'Helllo<BckSp><BckSp>o world'
[out]: 'Hello world'
Run Code Online (Sandbox Code Playgroud)

(这里我想在两个退格之前删除'l'和'o').

我可以简单地使用re.sub(r'[^>]<BckSp>', '', line)几次,直到没有<BckSp>剩下但我想找到一个更优雅/更快的解决方案.

有谁知道如何做到这一点 ?

python regex backreference

5
推荐指数
1
解决办法
117
查看次数

标签 统计

python ×2

regex ×2

backreference ×1