mysql - 用Python怎么在一个字符串里面取到想要的数据?
高洛峰
高洛峰 2017-04-17 17:13:59
[Python讨论组]

从数据库中提取到一个字符串。
a:2:{i:27;a:6:{s:3:"did";i:27;s:3:"num";i:1;s:8:"discount";s:1:"0";s:5:"price";s:2:"40";s:4:"name";s:12:"芒果雪冰";s:5:"omark";s:0:"";}i:36;a:6:{s:3:"did";i:36;s:3:"num";i:1;s:8:"discount";s:1:"0";s:5:"price";s:2:"40";s:4:"name";s:12:"抹茶雪冰";s:5:"omark";s:0:"";}}

现在要取出其中的“芒果雪冰”跟“抹茶雪冰”,用什么方法呢。。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(4)
伊谢尔伦

这不是PHP序列化后的结果吗?python用正则表达式最好了

巴扎黑

用正则表达式吧, 匹配前面出现 "s:12:" 后面引号的字符串。

import re
match_list = re.findall('(?<=s\:12\:)\".+?\"', s1)
PHP中文网

不推荐你使用与正则来提取,对于规整的数据,最好的方式就是使用相应的解析格式,这是json,推荐你直接使用json 来解析,当然,如果你有需要。可以直接使用提取中文就可以了。

^[\u4E00-\u9FA5]+$

迷茫

这是PHP变量的序列化,在Python中有一个第三方模块叫做phpserialize ,可以将其与Python的数据类型进行转换。具体的教程可以看这里:
Python使用PHP序列化的数据

可以的话,请自己提取。好吗?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号