如何使用正则表达式转换具有startswith的代码

时间:2019-09-29 05:01:09

标签: python regex

我有字典,需要提取以'12'开头的值。我已经编写了代码并开始工作。可以帮助我用正则表达式编写代码

test = {'name': 'a','num': '1234','num2':'5678', 'num3':'0142'}
[ k for k,v in test.items() if str(v).startswith('12')]

我的出场

['num', 'num4']

2 个答案:

答案 0 :(得分:1)

您的代码也可以正常工作。您正在打印密钥而不是值。

test = {'name': 'a','num': '1234','num2':'5678', 'num3':'0142'}
[ v for k,v in test.items() if str(v).startswith('12')]

输出:

['1234']

答案 1 :(得分:1)

import re

test = {'name': 'a', 'num': '1234', 'num2': '5678', 'num3': '0142'}
[k for k, v in test.items() if re.match('12', v)]