gpt4 book ai didi

python - 使用Python将给定的相对路径添加到字符串中的另一个路径

转载 作者:太空宇宙 更新时间:2023-11-03 14:46:20 25 4
gpt4 key购买 nike

我有一个字符串,里面有一些相对路径,如下所示:

<AdditionalIncludeDirectories>..\..\..\..\..\..\external\gmock\gmock-1.7.0\include;..\..\..\..\..\..\external\gmock\gmock-1.7.0\gtest\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

我只想为每个路径添加 ..\..\

我可以使用 replace 方法来做到这一点,但这里的问题是“向上步骤”的数量不固定(取决于我要替换的字符串)。

如果我尝试将 ..\ 替换为 ..\..\..\ 之类的内容,我的脚本将替换他发现的每个事件。所以我的最终结果如下 ..\..\..\..\..\..\..\..\..\..\..\..\.

那么我如何在 Python 3 中仅向此字符串中的每个路径添加 2 个“向上步骤”。

期望的结果是:

<AdditionalIncludeDirectories>..\..\..\..\..\..\..\..\external\gmock\gmock-1.7.0\include;..\..\..\..\..\..\..\..\external\gmock\gmock-1.7.0\gtest\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

最佳答案

还有更好的方法,但这应该有效。

a = 'AdditionalIncludeDirectories>..\..\..\..\..\..\external\gmock\gmock-1.7.0\include;..\..\..\..\..\..\external\gmock\gmock-1.7.0\gtest\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>'  
b = re.search('>(.*)<', a)## Get paths str position
paths_str = a[b.start() + 1:b.end() - 1]## paths_str
paths = paths_str.split(';')
full_paths = ['..\..\{0}'.format(path) for path in paths]## adding up dirs
full = '{0}>{1}<;{2}'.format(a[:b.start()], ';'.join(full_paths),
a[b.end():])## Combining together.

关于python - 使用Python将给定的相对路径添加到字符串中的另一个路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46219322/

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