在Python中使用正则表达式获取子字符串

时间:2019-06-16 11:42:24

标签: python regex

给出一个字符串'和d = 4或eands = 5或fxor = 6或j = 6',

我需要获取单个比较过滤器,即d = 4,eands = 5,fxor = 6,j = 6 我尝试了(。)和(。?)和其他一些运气不好的表达式。 请提出建议。

2 个答案:

答案 0 :(得分:1)

您可以使用正则表达式:\s([^\s]+?\s?=\s?[^\s]+?)\b

在Python中,

>>> import re
>>> re.findall(r'\s([^\s]+?\s?=\s?[^\s]+?)\b',
               'and d= 4 or eands = 5 or fxor = 6 and or j = 6')
['d= 4', 'eands = 5', 'fxor = 6', 'j = 6']

答案 1 :(得分:0)

regex101 link

import re

s = 'and d= 4 or eands = 5 or fxor = 6 and or j = 6'

print(re.findall(r'\w+\s*=\s*\d+', s))

打印:

['d= 4', 'eands = 5', 'fxor = 6', 'j = 6']