--- layout: post # 使用的布局(不需要改) title: 使用正则匹配b站bv号及av号使用方法 # 标题 subtitle: 文中正则表达式均使用 Python 编写 #副标题 date: 2023-01-16 # 时间 author: Cady He # 作者 header-img: img/post-bg-dutbs.jpg #这篇文章标题背景图片 header-mask: "0.1" # 博文页面上端的背景图片的亮度,数值越大越黑暗 catalog: true # 开启catalog,将在博文侧边展示博文的结构 istop: false # 设为true可把文章设置为置顶文章 music-id: # 网易云音乐单曲嵌入 music-idfull: # 网易云音乐歌单嵌入 tags: #标签 - Python - 网页 --- 以下正则表达式均使用 Python 编写 ==================== ### 匹配视频链接中的 BV 号 同时也适用直接匹配 BV 号 ``` url = "https://www.bilibili.com/video/BV1rP4y1u7oK?spm_id_from=333.851.b_7265636f6d6d656e64.2" bv_id = re.search(r'(BV.*?).{10}', url) print(bv_id.group(0)) ``` **输出如下** ``` BV1rP4y1u7oK ``` ### 匹配视频链接中的 AV 号 同时也适用直接匹配 AV 号 ``` text = "sadsadav679711482154sadsad654" av_id = re.search(r'(av.*?).{9}', text) print(av_id.group(0)) ``` **输出如下** ``` av679711482 ``` ### 匹配视频链接中的 SS 号 同时也适用直接匹配 SS 号 ``` url = "https://www.bilibili.com/bangumi/play/ss38952?from_spmid=666.4.0.0" ss_id = re.search(r"(ss.*?)\d+", url) print(ss_id.group(0)) ``` **输出如下** ``` ss38952 ``` ### 匹配视频链接中的 MD 号 同时也适用于直接匹配 MD 号 ``` url = "https://www.bilibili.com/bangumi/media/md28235860/?spm_id_from=666.25.b_6d656469615f6d6f64756c65.2" md_id = re.search(r"(md.*?)\d+", url) print(md_id.group(0)) ``` **输出如下** ``` md28235860 ``` ### 匹配 APP 中分享内容的链接 ``` text = "【这才是2022年该有的特效,场面逼真如现实,爽就一个字!【科幻Fans 布玛】科幻动作片《亚当计划》-哔哩哔哩】 https://b23.tv/QmhGgPr" url = re.search(r"[a-zA-z]+://[^\s]*", text) print(url.group(0)) ``` **输出如下** ``` https://b23.tv/QmhGgPr ``` * 文章原文:[《使用正则匹配b站bv号及av号使用方法》](https://www.hecady.com/%e4%bd%bf%e7%94%a8%e6%ad%a3%e5%88%99%e5%8c%b9%e9%85%8db%e7%ab%99bv%e5%8f%b7%e5%8f%8aav%e5%8f%b7%e4%bd%bf%e7%94%a8%e6%96%b9%e6%b3%95/)