重复模式的正则表达式

Man*_*her 2 regex go

我有以下输入文字:

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

我想回去

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

可能有无限量的这些.

我尝试了一些事情.我正在尝试这样的事情:

(?:((filtercolumn=.*&filtervalue=.*)+)?)
Run Code Online (Sandbox Code Playgroud)

但当然它不起作用.我明白了:

  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

小智 8

试试这个 \bfiltercolumn=[^&]*&filtervalue=[^&]*

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