Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 正则表达式组以查找范围_Python_Regex - Fatal编程技术网

Python 正则表达式组以查找范围

Python 正则表达式组以查找范围,python,regex,Python,Regex,我有一个字符串“age>444

我有一个字符串
“age>4<6”

我想得到最小和最大范围(4表示最小,6表示最大) 没有订单问题,因此
年龄<6>4“
也应该像
年龄>4<6”
一样有效

我目前有:

pattern = re.compile(r'(?P<min>age.*?> ?[\d+] ?)(?P<max>age.*?< ?[\d+] ?)')
address = pattern.search('age > 4 < 6')
min, max = (address.group('min'), address.group('max'))
print min, max
pattern=re.compile(r'(?Page.*?>?[\d+])(?Page.*?<?[\d+]))
地址=pattern.search('age>4<6')
最小值,最大值=(address.group('min'),address.group('max'))
打印最小值,最大值
但这对我不起作用


我正在尝试使用
*?
允许min在max之前,或者max在min之前-但是没有用

我对你的问题有点困惑,但你可以使用两个正则表达式:

text = "age > 4 < 6"
pmin,pmax = re.compile(r'age.*?< ?(\d+)'), re.compile(r'age.*?> ?(\d+)')
amin,amax = pmin.search(text), pmax.search(text)
min, max  = amin.group(1), amax.group(1)
print min, max
text=“年龄>4<6”
pmin,pmax=re.compile(r'age.*?<?(\d+)),re.compile(r'age.*?>?(\d+))
amin,amax=pmin.search(文本),pmax.search(文本)
最小值,最大值=最小组(1),最大组(1)
打印最小值,最大值

我对你的问题有点困惑,但你可以使用两个regexp:

text = "age > 4 < 6"
pmin,pmax = re.compile(r'age.*?< ?(\d+)'), re.compile(r'age.*?> ?(\d+)')
amin,amax = pmin.search(text), pmax.search(text)
min, max  = amin.group(1), amax.group(1)
print min, max
text=“年龄>4<6”
pmin,pmax=re.compile(r'age.*?<?(\d+)),re.compile(r'age.*?>?(\d+))
amin,amax=pmin.search(文本),pmax.search(文本)
最小值,最大值=最小组(1),最大组(1)
打印最小值,最大值
>>重新搜索(“(<(?P\d+)|>(?P\d+)+”,“年龄<4>6”)。groupdict()
{'max':'6','min':'4'}
>>重新搜索(“(<(?P\d+)|>(?P\d+)+”,“年龄<4>6”)。groupdict()
{'max':'6','min':'4'}