gpt4 book ai didi

Python 或 Shell 帮助 : How to search for a word and replace only the value next to it

转载 作者:行者123 更新时间:2023-12-01 03:13:11 25 4
gpt4 key购买 nike

我有一个具有以下格式的文本文件(list.txt):

Apple 1
Banana 5.0
orange_1 0.5

该列表可以持续很多行。我想最终搜索“Apple”一词并仅替换它旁边的值。我知道如何使用“sed”命令来搜索和替换单词,但我不知道如何搜索单词并仅替换它旁边的值?

我在脚本中使用的 sed 命令如下:

sed "s/Apple/$1/g" list.txt > newlist.txt 

其中 $1 在运行脚本中定义,可以是任何内容(例如葡萄)。同样,这会切换“Apple”一词,而不是它旁边的值。我希望能够通过使用 SHELL 或 Python 命令来执行此操作。任何帮助都会很棒!

最佳答案

在这里,我展示了积极的回顾方式,正如 @ryugie 所说:

content = '''Apple 1
Banana 5.0
orange_1 0.5'''


def my_replace(content, fruit, value):
import re
return re.sub(r'(?<=' + fruit + ' )([\d\.]+)', str(value), content)


print my_replace(content, 'Apple', 4.0)

print my_replace(content, 'Banana', 1.5)

我们可以得到:

Apple 4.0
Banana 5.0
orange_1 0.5

Apple 1
Banana 1.5
orange_1 0.5

关于Python 或 Shell 帮助 : How to search for a word and replace only the value next to it,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42700814/

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