Python 如何将环境变量语句拆分为两个项目(变量、值)?
我有一个python脚本,它获取环境变量字符串,并将其拆分为变量和值 使用python进行拆分非常容易:Python 如何将环境变量语句拆分为两个项目(变量、值)?,python,Python,我有一个python脚本,它获取环境变量字符串,并将其拆分为变量和值 使用python进行拆分非常容易: export_str = 'VAR1=VALUE1 VAR2=VALUE2' for var_value in export_str.split(' '): var,value=var_value.split('=') print var, value 但问题是变量可能更复杂 export_str = ''' VAR1="VALUE1 OTHER VALUE" VAR2=VAL
export_str = 'VAR1=VALUE1 VAR2=VALUE2'
for var_value in export_str.split(' '):
var,value=var_value.split('=')
print var, value
但问题是变量可能更复杂
export_str = ''' VAR1="VALUE1 OTHER VALUE" VAR2=VALUE2 VAR3=VALUE_3 VAR4="${VALUE5}=VALUE6"'''
在这种情况下,python脚本是错误的
有没有更好的方法来分割这些变量
编辑
或更复杂的情况,如:
export_str = '''VAR5="VALUE'5" VAR6='VALUE"6' VAR7='VALUE7' '''
您可以使用
re
进行拆分
import re
export_str = 'VAR1="VALUE1 OTHER VALUE" VAR2=VALUE2 VAR3=VALUE_3 VAR4="${VALUE5}=VALUE6"'
re.split(r'\s(?=(?:[^"]*"[^"]*")*[^"]*$)',export_str)
见演示
谢谢您的回复。非常好。(只需在\“)中添加一个scape字符)下一个案例如何:
export\u str='VAR1=\'VALUE“1\'VAR2=“VALUE\'VALUE2”
拆分VAR1='VALUE“1'
和VAR2=“VALUE'VALUE2”
?@moylop260您应该为该案例以及其他案例提出一个新问题