gpt4 book ai didi

python - 从字符串中剪切多类型符号

转载 作者:行者123 更新时间:2023-12-01 04:45:00 25 4
gpt4 key购买 nike

我有 list :

for item in list:                                                                       
if item.startswith('Proj') and item.split()[2].strip('"').rstrip('",') in MAIN_MODS:
print 'Project ID: %s Project name: %s' % (item.split()[0], item.split()[2])

产生下一个结果:

Project ID: Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") Project name: "UnityUI",

我想从结果中删除 Project("{ and "

首先我意识到 - 是 split 方法:

print 'Project ID: %s Project name: %s' % (item.split()[0].lstrip('Project("{').rstrip('}")'), item.split()[2].strip('"').rstrip('",'))

这给了我想要的:

Project ID: FAE04EC0-301F-11D3-BF4B-00C04F79EFBC Project name: UnityUI

但是它看起来很糟糕......所以我试图找到更好的东西。

第二个解决方案 - 是使用 re.sub(),但是 - 如何删除一个 RE 中的两个部分?:

print 'Project ID: %s Project name: %s' % (re.sub('(^Project\(\"\{)', '', item.split()[0]), re.sub('(^")', '', item.split()[2]))

这将仅删除前导部分(Project\(\"\{"):

Project ID: FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") Project name: UnityUI",

最佳答案

re.sub(r"Project\("{([^}]*)}"\)",r"\1",test_str)

您可以使用这个。请参阅演示。您可以捕获您想要的内容并替换它,通过 \1 删除不需要的内容

https://regex101.com/r/sJ9gM7/118#python

关于python - 从字符串中剪切多类型符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29678687/

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