在PHP中使用'preg_match'从url中提取变量

时间:2017-12-12 20:48:33

标签: php regex

提供一个正则表达式,该表达式将从此url中提取u2参数的值。 正则表达式匹配将使用PHP函数preg_match提取,并期望匹配为完整的正则表达式提取或第一个捕获组。

示例:http://www.example.com?u1=US&u2=HA853&u3=HPA

2 个答案:

答案 0 :(得分:1)

使用parse_url()来解析URL和parse_str()来解析查询字符串,而不是正则表达式。

答案 1 :(得分:0)

你可以去

<?php

$url = "Example: http://www.example.com?u1=US&u2=HA853&u3=HPA";

$regex = '~(?P<key>u\d+)=(?P<value>[^&]+)~';

preg_match_all($regex, $url, $matches, PREG_SET_ORDER);
print_r($matches);
?>

在这里,我们正在寻找u,然后是至少一位数,=和任何而非&符号