如何使用正则表达式从字符串中提取值.(PHP)
发布时间:2020-12-14 06:04:40 所属栏目:百科 来源:网络整理
导读:我有这样的字符串 "access_token=103782364732640461|2.ZmElnDTiZlkgXbT8e34Jrw__.3600.1281891600-10000186237005083013|yD4raWxWkDe3DLPJZIRox4H6Q_k.expires=1281891600secret=YF5OL_fUXItLJ3dKQpQf5w__session_key=2.ZmElnDTiZlkgXbT8e34Jrw__.3600.128
我有这样的字符串
"access_token=103782364732640461|2.ZmElnDTiZlkgXbT8e34Jrw__.3600.1281891600-10000186237005083013|yD4raWxWkDe3DLPJZIRox4H6Q_k.&expires=1281891600&secret=YF5OL_fUXItLJ3dKQpQf5w__&session_key=2.ZmElnDTiZlkgXbT8e34Jrw__.3600.1281891600-10000186237005083013&sig=a2b3fdac30d53a7cca34de924dff8440&uid=10000186237005083013" 我想提取UID. 解决方法
没有更多信息,很难给出最好的答案.你可以尝试这个正则表达式:
'/&uid=([0-9]+)/' 示例代码: $s = '"access_token=103782364732640461|2.ZmElnDTiZlkgXbT8e34Jrw__.3600.1281891600-10000186237005083013|yD4raWxWkDe3DLPJZIRox4H6Q_k.&expires=1281891600&secret=YF5OL_fUXItLJ3dKQpQf5w__&session_key=2.ZmElnDTiZlkgXbT8e34Jrw__.3600.1281891600-10000186237005083013&sig=a2b3fdac30d53a7cca34de924dff8440&uid=10000186237005083013"'; $matches = array(); $s = preg_match('/&uid=([0-9]+)/',$s,$matches); print_r($matches[1]); 结果: 10000186237005083013 但我注意到您的输入字符串看起来像URL的一部分.如果是这种情况,您可能希望使用parse_str.这将正确处理正则表达式无法正确处理的许多特殊情况. $arr = array(); parse_str(trim($s,'"'),$arr); print_r($arr['uid']); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |