正则表达式提取精确(不包括)URL参数值

时间:2017-12-19 08:04:07

标签: regex

网址可能是

example.com/test?pid=123

example.com/test?test=ttt&pid=123

example.com/test#test=ttt&pid=123

example.com/test?pid=123&test=ttt&

example.com/test?xxxpid=123&test=ttt& //should not select because it has xxx prepanded.

它应该只选择pid参数值。我想出了

[^?]+(?:\?pid=([^&]+).*)?

但这是有问题的。

example.com/test?gdsfg=sdfasdfa&pid=123

1 个答案:

答案 0 :(得分:0)

  

选择 pid 参数值

.+[?&]pid=([^=?&\s]+)

所需的值在第一个捕获的组中

https://regex101.com/r/E1yHVY/11