如何使用正则表达式截取URL中&referer=和&username之间的部分?

如何使用正则表达式截取url中&referer=和&username之间的部分?

如何正则截取&referer=和&username之间的部分?

给定一个url字符串,需要正则截取从&referer=到&username之间的部分。

示例url:

web.admin.com/admin/usermanage/investuser?start=2018-01-02%2000:00:00&end=2018-01-02%2010:41:46&itype=3&isfirst=3&referer=url_encoded_value&username=username

登录后复制

注意:

用户提供的示例url链接有误,包含未经url编码的特殊字符&,这意味着它不能被正则表达式可靠地解析。因此,下方提供的正则表达式仅适用于url编码正确的字符串,例如:

web.admin.com/admin/usermanage/investuser?start=2018-01-02%2000:00:00&end=2018-01-02%2010:41:46&itype=3&isfirst=3&referer=%2fregister2%3fv%3d10f454%26key%3d311bcdec754052e40fe025a54f488f9a%26rbref%3drbzc%26isshow%3d%26username%3d%26pname%3d%26plattype%3d0%26istatus%3d1%26buy_type%3d0%26channel_source%3d62&username=user

登录后复制

正则表达式:

preg_match('/&referer=(.*?)&username=(.*)/', $url, $match);$result = $match[1];

登录后复制

示例代码:

$url = 'web.admin.com/admin/userManage/investuser?start=2018-01-02%2000:00:00&end=2018-01-02%2010:41:46&itype=3&isfirst=3&referer=URL_ENCODED_VALUE&username=USERNAME';$match_result = '';preg_match('/&referer=(.*?)&username=(.*)/', $url, $match);if (isset($match[1])) {  $match_result = $match[1];}// 输出截取的结果echo $match_result;

登录后复制

以上就是如何使用正则表达式截取URL中&referer=和&username之间的部分?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2657710.html

(0)
上一篇 2025年3月7日 10:10:40
下一篇 2025年2月22日 18:34:34

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论