gpt4 book ai didi

Python正则表达式替换部分字符串

转载 作者:行者123 更新时间:2023-12-01 01:06:39 27 4
gpt4 key购买 nike

我正在尝试替换字符串的特定部分。每当我有一个反斜杠,后跟一个大写字母时,我希望将反斜杠替换为制表符。就像本例中一样:

Hello/My daugher/son

输出应该如下所示

Hello    My daugher/son

我尝试过使用 re.sub():

for x in a:
x = re.sub('\/[A-Z]', '\t[A-Z]', x)

但是我的输出变成了:

Hello    [A-Z]y daugher/son

这确实不是我想要的。有没有更好的方法来解决这个问题,也许不是在正则表达式中?

最佳答案

您可以将 /(?=[A-Z]) 替换为 \t。请注意,在 Python 中,您不需要将 / 转义为 \/

检查这个Python代码,

import re 

s = 'Hello/My daugher/son'
print(re.sub(r'/(?=[A-Z])',r'\t',s))

打印,

Hello   My daugher/son

或者,按照您尝试替换的方式,您需要使用 /([A-Z]) 正则表达式捕获组中的大写字母,然后将其替换为 \t\1 恢复在 group1 中捕获的内容。检查这个Python代码,

import re 

s = 'Hello/My daugher/son'
print(re.sub(r'/([A-Z])',r'\t\1',s))

再次打印,

Hello   My daugher/son

关于Python正则表达式替换部分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55284820/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com