从数据库中提取到一个字符串。
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:"";}}
现在要取出其中的“芒果雪冰”跟“抹茶雪冰”,用什么方法呢。。
这不是PHP序列化后的结果吗?python用正则表达式最好了
用正则表达式吧, 匹配前面出现 "s:12:" 后面引号的字符串。
不推荐你使用与正则来提取,对于规整的数据,最好的方式就是使用相应的解析格式,这是json,推荐你直接使用json 来解析,当然,如果你有需要。可以直接使用提取中文就可以了。
^[\u4E00-\u9FA5]+$
这是PHP变量的序列化,在Python中有一个第三方模块叫做
phpserialize
,可以将其与Python的数据类型进行转换。具体的教程可以看这里:Python使用PHP序列化的数据
可以的话,请自己提取。好吗?