第一次写正则

写得很长,可是很可惜,太复杂,反而没有。

# 获取插件类型数据
x = 0
# 谷歌产品这个类型单独获取,有问题,1,这个类别不总是排在第一个?2,怎么把空的hot_picks插进去?
cat_google_regex = r"""(?mx)
\[\"(ext/                    #["ext/开头的字符串,第一行作为一个个分组
[^\"\]]+?[Gg]oogle)\",       #在同一个双引号内、方括号中有google这个词
\"([^\"]+?)\",               #获取code_id  name
"""
category = CategoryItem()
cat_google = re.search(cat_google_regex, all_content)
category['name'] = cat_google.group(2)
category['code_id'] = cat_google.group(1)
x += 1
category['weight'] = x
category['hot_picks'] = {"info": "null", "title": "null", "photo_url": "null"}
yield category

cat_line_regex = r"""(?mx)
\[                          #["ext/开头,以infiniteWall结尾的字符串
\"(ext/[^\"]+?)\",          #获取code_id
\"([^\"]+?)\"               #获取name
[^\]]+?\]\n,                #至第一行结束
\[                          #第二行开始
[^,\]]*?,                   #匹配第一个逗号
\"([^\"]+?)\",              #匹配第二个逗号,获取引号中的内容
[^,\]]*?,                   #匹配第三个逗号
[^,\]]*?,                   #匹配第四个逗号
[^,\]]*?,                   #匹配第五个逗号
[^,\]]*?,                   #匹配第六个逗号
[^,\]]*?,                   #匹配第七个逗号
\"([^\"]+?)\"               #匹配第八个逗号,获取引号中的内容
\]\n,                       #第二行结束
\[\"infiniteWall            #以此结尾作为区分标志
"""

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值