我想要与regex PCRE匹配的示例GET请求:
random.php?blue=value1&green=value2&red=value3&orange=value4&grey=value5&black=value6
事实:
random.php -文件名是随机的,只有".php?“是固定的
我有大约10种颜色定义为参数
没有特定的颜色顺序-. .php?blue=a-zA-Z0-9{1,20}
可以只有2种颜色作为参数,或者所有的10种颜色,但是我想要匹配所有的GET请求,多个参数被加入\&
值总是介于1-20之间,并带有字母数字-. .php?blue=a-zA-Z0-9{1,20}
你会怎么处理这个?
发布于 2017-12-04 04:31:23
也许是这样的:
[^\s/?]+\.php\?((?:blue|orange|red|black)=[a-zA-Z0-9]{1,20})(?:&(?1)){1,9}(?:$|#.*)
(用你想要的颜色完成)
(?1)
是对第一个捕获组子模式的引用。
我添加了对最终锚部件#.*
的支持。如果你不需要或者不想要的话,可以随意移除它。
https://stackoverflow.com/questions/47633178
复制