其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

重复模式的正则表达式

GG网络技术分享 2025-03-18 16:15 2


问题描述:

I have the following input text:

pagelimit=50&filtercolumn=Datacenter&filtervalue=abfg1&filtercolumn=MachineType&filtervalue=fg&filtercolumn=GPG&filtervalue=IPMI

I want to get back

  1. filtercolumn=Datacenter&filtervalue=abfg1
  2. filtercolumn=MachineType&filtervalue=fg
  3. filtercolumn=GPG&filtervalue=IPMI

There may be an unlimited amount of these.

I have tried a few things. I\'m currently trying something like this:

(?:((filtercolumn=.*&filtervalue=.*)+)?)

But of course it doesn\'t work. I get:

  1. filtercolumn=Datacenter&filtervalue=abfg1&filtercolumn=MachineType&filtervalue=fg&filtercolumn=GPG&filtervalue=IPMI
  2. filtercolumn=Datacenter&filtervalue=abfg1&filtercolumn=MachineType&filtervalue=fg&filtercolumn=GPG&filtervalue=IPMI

网友观点:

Try this \\bfiltercolumn=[^&]*&filtervalue=[^&]*

https://regex101.com/r/sasmXL/2

python正则表达式精讲--分组

1. 什么是分组

分组是用圆括号“()”括起来的正则表达式,匹配出的内容就表示一个分组。使用分组,可以从目标字符串中提取出与圆括号内正则表达式相匹配的内容。

标签:

提交需求或反馈

Demand feedback