python正则判断,Python:正则表达式:查找是否存在,否则忽略

pattern = re.compile('''first_condition\((.*)\)

extra_condition\((.*)\)

testing\((.*)\)

other\((.*)\)''', re.UNICODE)

那会发生什么,如果我运行下面的文字正则表达式:

text = '''first_condition(enabled)

extra_condition(disabled)

testing(example)

other(something)'''

result = pattern.findall(text)

print(result)

[('enabled', 'disabled', 'example', 'something')]

但是如果一个或两行被遗漏,正则表达式返回空列表。例如。我的文字是:

text = '''first_condition(enabled)

other(other)'''

我要得到什么:

[('enabled', '', '', 'something')]

我可以在几个命令做到这一点,但我认为,这将是比一个正则表达式做慢。原始代码使用sed,所以速度非常快。我可以用sed来做,但我需要跨平台的方式来做到这一点。有可能吗? Tnanks!

P.S.这也将是巨大的,如果字符串的顺序将是免费的,不是固定不变的:

text = '''other(other)

first_condition(enabled)'''

必须返回绝对是一样的:

[('enabled', '', '', 'something')]

+2

你真的想要得到的结果是包含一个元组的列表? –

+0

@MarkByers:不,单个列表甚至更好。 –

+0

或单个元组,不需要。 –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值