从字符串中删除括号和特殊字符并转换List(值以逗号分隔)

时间:2018-05-21 06:26:26

标签: python regex algorithm list logic

我有一个如下字符串。

  

{[Utilisa。 du domaine,jira-users,confluence-users,jira-developers,   印度产品团队,' test-1',"产品组",Atlassian-Stash,   awspreprod-readonly,awsprod-readonly,awspreprod-rddevops,   awsrddev-readonly,awsrddev-rddevops,test.user]}

现在,我想通过删除(){}'" 特殊字符来制作此元素的列表。

我知道我可以使用一些正则表达式或以下方法删除括号。

%49[^\n]

但我想删除额外或多个空格,如果有类似a; b; c,c那么我也认为这是4个元素,无论它是否;或者,

预期产出:

  

[Utilisa.dudomaine,JIRA用户,合流用户,JIRA-开发商,ProductTeamIndia,试验-1,ProductGroup,Atlassian的-藏匿,awspreprod-只读,awsprod-只读,awspreprod-rddevops,awsrddev-只读,awsrddev- rddevops,test.user]

有什么好主意吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

re.split() 功能解决方案:

import re

s = '''{[Utilisa. du domaine, jira-users, confluence-users, jira-developers, Product Team India, 'test-1', "Product Group", Atlassian-Stash, awspreprod-readonly, awsprod-readonly, awspreprod-rddevops, awsrddev-readonly, awsrddev-rddevops, test.user]'''

result = [i for i in re.split(r'\s*[{}<>\[\],;\'"]\s*', s) if i]
print(result)

输出:

['Utilisa. du domaine', 'jira-users', 'confluence-users', 'jira-developers', 'Product Team India', 'test-1', 'Product Group', 'Atlassian-Stash', 'awspreprod-readonly', 'awsprod-readonly', 'awspreprod-rddevops', 'awsrddev-readonly', 'awsrddev-rddevops', 'test.user']