gpt4 book ai didi

javascript - 如何在 python 中使用 sed?

转载 作者:行者123 更新时间:2023-11-29 22:11:52 26 4
gpt4 key购买 nike

我相信一定有更智能的方法来实现这一目标。在使用 Closure 缩小它之前,我需要更改我的 javascript 中的应用程序 ID。

我想到的一个“快速”解决方案是使用旧的 sed。虽然这适用于命令行,但在 python 文件中运行时会失败。它不会因错误而失败。 outfile 文件是源文件的精确副本。就好像它没有找到文本一样。

choice = raw_input("Type 1 (Staging) or 2 (Production)?")
if choice == '1':
cmd = r"sed 's%var appid = '1234';%var appid = '5678';%' {0}f11.js > {0}f11_final.js".format(PATH)
os.system(cmd)

知道我错过了什么吗?谢谢

更新:

我只是从这里更改了来源:

var appid = '1';

为此:

var appid = 1;

并成功运行:

cmd = "sed -i 's%var appid = 1;%var appid = 2;%' {0}f11.js".format(PATH)

它与转义单引号有关。知道我能做什么吗?我尝试了 \' 但失败了。

解决方法:

我最终按照建议在 python 中完成了它。这并不容易,如果你以前没有做过的话。所以我分享我的代码:

with open("{0}f11.js".format(PATH), "r") as sources:
lines = sources.readlines()
with open("{0}f11-final.js".format(PATH), "w") as sources:
for line in lines:
sources.write(re.sub("var appid = '1';", "var appid = '2';", line))

最佳答案

您可以使用图书馆 re python 。特别是类似于 sed 的函数 sub。

关于javascript - 如何在 python 中使用 sed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17748493/

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