Regex to match URL with specific query string param

后端 未结 2 1389
遥遥无期
遥遥无期 2021-01-24 18:54

I am using this regex .*\\?(a\\=([0-9]{3,4})) to match any URLs with the query string ?a={{a random number here}}. It should only match a query string with 3 or 4 d

2条回答
  •  说谎
    说谎 (楼主)
    2021-01-24 19:33

    Try this regex:

    .+\/\?a=([0-9]{3,4})$
    
    • /.+\/\?a=([0-9]{3,4})$/gm
    • .+ matches any character (except newline)
    • Quantifier: + Between one and unlimited times, as many times as possible, giving back as needed [greedy]
    • \/ matches the character / literally
    • \? matches the character ? literally
    • a= matches the characters a= literally (case sensitive)
    • 1st Capturing group ([0-9]{3,4})
    • [0-9]{3,4} match a single character present in the list below Quantifier: {3,4} Between 3 and 4 times, as many times as possible, giving back as needed [greedy]
    • 0-9 a single character in the range between 0 and 9
    • $ assert position at end of a line

    See it working here: https://regex101.com/r/sP0lR3/1

    And as a visual representation:

    Regular expression visualization

    Debuggex Demo

提交回复
热议问题