我有这个字符串:
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
我想创建一个包含这些代码的列表。它可能看起来像这样:
mylist = ['26.10-8-00', '46.51-6-01', '95.11-8-00']
答案 0 :(得分:1)
我将字符串拆分为|
以获取列表,然后将每个值拆分为-
并仅提取其日期部分:
result = [x.split(' - ')[0] for x in s.split(' | ')]
答案 1 :(得分:1)
您可以使用正则表达式:
import re
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
new_string = [i for i in re.split("\s-\s|(?<=\|)\s(?=\d)", string) if re.findall("^\d+\.\d+-\d+-\d+", i)]
输出:
['26.10-8-00', '46.51-6-01', '95.11-8-00']
答案 2 :(得分:1)
采用更简单的方法,但完成工作。
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
mylist = []
for x in string.split(" | "):
mylist.append(x.split(" - ")[0])
print(mylist)
输出
['26.10-8-00', '46.51-6-01', '95.11-8-00']
答案 3 :(得分:1)
import re
string = '26.10-8-00 - Fabricação de componentes eletrônicos | 46.51-6-01 - Comércio atacadista de equipamentos de informática | 95.11-8-00 - Reparação e manutenção de computadores e de equipamentos periféricos'
output = re.findall(r'\d+\.\d+-\d+-\d+', string)
# ['26.10-8-00', '46.51-6-01', '95.11-8-00']