gpt4 book ai didi

python - re.sub 用列表中的最后一项替换所有内容

转载 作者:行者123 更新时间:2023-11-28 21:50:22 24 4
gpt4 key购买 nike

每当我发现一个以大写字母开头的单词时,我都会尝试换行,这是我的代码:

import re


def new_line(name):
fr = open(name, 'r')
string = fr.read()
new_list = []
fw = open('output', 'w')
c = 0
m = re.findall('\s+[A-Z]\w+', string,re.MULTILINE)
for i in m:

j = str(i)
l = re.sub('[A-Z]\w+','\n'+str(m[c]), string,re.MULTILINE)
c = c+1
print("These are the list items:"+j+"\n")



print("STRINGY STRING BELOW!!!")
print(string)
print('/////////////////////////////////////////////')
print("Output :\n"+l)
print(m)
new_line('task.txt')

期望的输出应该是这样的:

这些是列表项:小姐

这些是列表项:凯瑟琳

...

这些是列表项:Heathcliff

然后添加新行的文本,而不是用\n 和匹配本身替换每个匹配项,文本仅替换为列表 m 中的最后一项

像这样:

输出:

我得到了

希斯克利夫

希斯克利夫和我自己

希斯克利夫

希思克利夫;令我欣慰的是,她的表现比我想象的要好得多。

希斯克利夫似乎过分喜欢了

希思克利夫。

希思克利夫;甚至对他的妹妹,她也表现出足够的爱意。

我没有发布原始输入文本,因为它太长了。

最佳答案

你可以试试这个。它只是在每个单词(大写字母)前加上 \n 前缀。

>>> re.sub(r'\s+([A-Z])','\n\g<1>', "Heathcliff and myself to Heathcliff; to my")
'Heathcliff and myself to\nHeathcliff; to my'

关于python - re.sub 用列表中的最后一项替换所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32011613/

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