gpt4 book ai didi

python : Convert Integers into a Count (i. e。 3 --> 1,2,3)

转载 作者:行者123 更新时间:2023-11-28 20:58:34 25 4
gpt4 key购买 nike

这可能比解释我的问题所需的信息更多,但我正在尝试将 2 个脚本(我为其他用途编写的)组合在一起以执行以下操作。

目标字符串(输入文件)4FOO 2BAR

结果(输出文件)1FOO 2FOO 3FOO 4FOO 1BAR 2BAR

我的第一个脚本找到模式并复制到 file_2

pattern = "\d[A-Za-z]{3}"
matches = re.findall(pattern, input_file.read())
f1.write('\n'.join(matches))

我的第二个脚本打开 output_file,并使用 re.sub,使用捕获组和反向引用替换和更改目标字符串。但是我被困在这里如何将 3 变成 1 2 3

有什么想法吗?

最佳答案

这个简单的例子不需要使用正则表达式,但是如果你想使用 re,这里是例子(注意:你的模式有小错误,应该是 A-Z ,而不是 A-A):

text_input = '4FOO 2BAR'

import re

matches = re.findall(r"(\d)([A-Za-z]{3})", text_input)

for (count, what) in matches:
for i in range(1, int(count)+1):
print(f'{i}{what}', end=' ')

print()

打印:

1FOO 2FOO 3FOO 4FOO 1BAR 2BAR 

注意:如果你想支持多位数字,你可以使用(\d+)——注意+符号。

关于 python : Convert Integers into a Count (i. e。 3 --> 1,2,3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51543354/

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