函数:
C_OPS_CITY=SFO_C_OPS_SITE_INDICATOR=Office_IDENTITYCATEGORY=Employee_C_OPS_COMPANY=My Company_
指望输出:
C_OPS_CITY=SFO
C_OPS_SITE_INDICATOR=Office
[^=_][^=]*=[^_]+
Https://regex101.com/r/7w1wmx/4
我想到的是,它不是最优雅的代码,而是到目前为止的问题:
my_str ="C_OPS_CITY=SFO_C_OPS_SITE_INDICATOR=Office_IDENTITYCATEGORY=Employee_C_OPS_COMPANY=My Company_"
response = my_str.split("=")
for x in range(1,response.__len__()):
split = response[x].split("_", 1)
response[x-1] = [response[x-1], split[0]]
response[x] = split[1]
print(response)
[['C_OPS_CITY', 'SFO'], ['C_OPS_SITE_INDICATOR', 'Office'], ['IDENTITYCATEGORY', 'Employee'], ['C_OPS_COMPANY', 'My Company'], '']
我们的想法是,我们首先按照平等的符号分开,因为我们知道这些始终存在以界定钥匙和值,然后我们只是在第一个下划线('_ _')上拆分了我们看到的第一个下划线('_ _'),此后的任何文本下划线下降了。是下一个学期的关键,我们浏览每个元素这样做。(编辑) 我还注意到,我只是在不知道您使用哪种语言的情况下使用Python,但该解决方案应在其他语言中很容易重现,尽管进行了少量调整。