gpt4 book ai didi

python - 如果脚本路径可以包含转义空格,如何在空格处拆分脚本和选项?

转载 作者:太空宇宙 更新时间:2023-11-04 01:08:32 27 4
gpt4 key购买 nike

脚本位于"just a dir/my script.sh",对此脚本的调用是:

path_options = 'just\ a\ dir/my\ script.sh --option'

如何将 path_options 拆分为以下内容?:

['just a dir/my script.sh', '--option']

好的,@Kasra 对上面的例子给出了答案,但是如果可能有多个选项怎么办,比如?:

path_options = 'just\ a\ dir/my\ script.sh --option --option2 ... --optionN'

最后做了:

a = re.split(r'[^\\] ', path_options, maxsplit=1)  # Split at first space that is not '\ '
a = [re.sub(r'\\ ', ' ', a[0])] + a[1:] # Convert all '\ ' in first element to ' '

给出:

['just a dir/my script.s', '--option .. --optionN']

根据@JoelCornett 的评论:

a = shlex.split(path_options)

给出:

['^/just a dir/my script.sh', '--option', '..', '--optionN']

最佳答案

您可以使用 re.split 将您的路径与 \ 或空格分开,然后切片并连接:

>>> l=re.split(r'[\\ ]+',path_options)
>>> l=[' '.join(l[:-1]),l[-1]]
>>> l
['just a dir/my script.sh', '--option']

关于python - 如果脚本路径可以包含转义空格,如何在空格处拆分脚本和选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29062326/

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