代码之家  ›  专栏  ›  技术社区  ›  Ilya Gazman

ReXEX:提取URL参数

  •  0
  • Ilya Gazman  · 技术社区  · 6 年前

    我正在寻找一个正则表达式来提取URL PARAMs。我目前的解决方案是:

    (?i)key(?-i)=([^&]+)
    

    但在下面的一些测试中失败了。

    我想匹配的行

    cool=13&nice=zz&key=value&polo=0
    Key=value&cool=13&nice=zz&polo=0
    cool=13&nice=zz&polo=0&key=value
    

    线条我不想匹配

    cool=13&nice=zz&myKey=value&polo=0
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   anubhava    6 年前

    URL解析例程在许多语言中都可用,建议将它们作为首选。

    但是,如果您出于某种原因想使用regex,下面是一个可以使用的lookbehind regex:

    (?<=&|^)(?i)key(?-i)=[^&]*
    

    在这里 (?<=&|^) 是一个查找后断言,确保有一个 & 或匹配前的行开始 key .

    RegEx Demo