如何选择特定地点的特定字符

时间:2017-04-01 14:03:42

标签: regex python-3.x

我的问题是关于以下数据列表。

data = ['TNNI3', 'TSHZ3/THEG5', 'ACTR3BP2-', 'BIN1/CYP27C1',
'-', 'NBPF1/NBPF20', 'ERBB4', '-NBPF20', '-']

我需要选择角色" - "只有与其他东西结合在一起。如果它自立,它需要保持未被选中。

例如" - " in' ACTR3BP2 - '和' -NBPF20'需要选择和两个' - '在列表中需要保持未被选中状态。

有没有人知道如何在python3中使用正则表达式?

一旦正确" - "被选中我想从列表中删除它们。 我认为这样做是使用re.sub函数并用空格替换它。如果有人有更好的想法这样做。我很高兴听到他们的声音!

1 个答案:

答案 0 :(得分:0)

如果您不需要正则表达式,有更好的方法可以做到这一点。执行字符串比较和替换比使用正则表达式更快。<​​/ p>

import re

data = ['TNNI3', 'TSHZ3/THEG5', 'ACTR3BP2-', 'BIN1/CYP27C1',
       '-', 'NBPF1/NBPF20', 'ERBB4', '-NBPF20', '-']

for e in data:
    if "-" in e and e != "-":
        old = e
        new = e.replace("-", "")
        print(old + " >> " + new)