这个帖子https://tieba.baidu.com/p/9806922900让我回想起当初全自动化观影在拉资源时,总会出现一堆ISO文件无法导入,或是BR-DISK里有一堆我不需要的菜单和花絮的情况。时间已经过去很久了,大约发生在2022年前后,那会我经常修改设置,尝试去解决掉全自动观影流程中需要人工去介入的部分,事实上,现在的我已经“安稳”地观影了很长一段时间,许久没有更改过设置,今天我甚至花了一小会才想起来匹配出iso文件和BR-DISK的那条正则表达式是从哪搞来的。朋友们各有各的需求,大佬们八仙过海肯定各有各的解决办法,所以我就简单分享下有关这事的正则表达式,毕竟当年我也在折腾:命名好乱我怎么写才能避免拉到这些我不想要的东西?
ISO和BR-DISK
ISO是蓝光盘的镜像文件;BR-DISK就是大家平时下载到的原盘,它里面有个BDMV文件夹,下面一堆各种类型的小文件,其中有很多m2ts,体积最大那个m2ts就是电影主要内容了,小的m2ts便是菜单花絮之类的。至于定义大家也不用咬文嚼字,我记得不是很清也懒得去搜了,这俩大概就是这么回事。
如果我们在电脑上用potplayer这类ffmpeg播放器,没有什么是放不出来的,但大家都是玩NAS的,讲究一个全自动,讲究一个整理刮削,讲究一个手机平板电脑电视这些前端无缝切换而后端服务一致,像iso单文件和BR-DISK中体积最大的那一个m2ts文件,对于不喜欢原盘的我来讲,其实很不利于资源的整理和刮削,在某些客户端场合也不利于解码播放。总之,会有人的需求像我一样,都希望资源是清一色的MKV容器。
正则表达式
^(?!.*\b((?<!HD[._ -]|HD)DVD|BDRip|MKV|XviD|WMV|d3g|BDREMUX|REMUX|^(?=.*1080p)(?=.*HEVC)|[xh][-_. ]?26[45]|German.*DL|((?<=\d{4}).*German.*(DL)?)(?=.*\b(AVC|HEVC|VC[-_. ]?1|MVC|MPEG[-_. ]?2)\b))\b)(((?=.*\b(Blu[-_. ]?ray|BD|HD[-_. ]?DVD)\b)(?=.*\b(AVC|HEVC|VC[-_. ]?1|MVC|MPEG[-_. ]?2|BDMV|ISO)\b))|^((?=.*\b(^((?=.*\b((.*_)?COMPLETE.*|Dis[ck])\b)(?=.*(Blu[-_. ]?ray|HD[-_. ]?DVD)))|3D[-_. ]?BD|BR[-_. ]?DISK|Full[-_. ]?Blu[-_. ]?ray|^((?=.*((BD|UHD)[-_. ]?(25|50|66|100|ISO)))))))).*
它来自trash-guides:https://trash-guides.info/Radarr/Radarr-collection-of-custom-formats/#br-disk。我现在用的它跟现在trash-guides里面的它是有一些区别的,事实上这个正则表达式总是“套经验”的,一直有人在维护不断在更新,但区别很小,我这里就复制的是我自己正在使用的。
看看这个正则表达式的描述:This is a custom format to help Radarr/Sonarr recognize and ignore BR-DISK (ISOs and Blu-ray folder structure) in addition to the standard BR-DISK quality.大概意思就是这个正则在标题上匹配出了电影和电视剧中ISO和BR-DISK的资源。
下图为此正则的可视化:

看完本分享后有需要的朋友可以找个这种正则可视化的网站,看着图解去修改。
注意:这条正则用了零宽后行断言,请注意你找这些测试正则/可视化正则的网站是否支持零宽后行断言,不是所有地方都支持这个的,不然就会报错。
效果
我用它也好几年了,从我的实践上来看,它的确帮我拦下了绝大部分的ISO和BR-DISK,也就是解决了像本文初提到的帖子中楼主遇到的问题。我为什么说绝大部分?因为压制组非常多加上不是所有资源命名都能很规范地被统一,滴水不漏地把所有非期望版本拒之门外是不太现实的事情,我们只要做到九成效果就足够了。
说完我自己的使用感受,现在我们再来直接匹配资源名称来试试实际效果,我找了三部蓝光热门电影中一些常见的压制资源名称,为了避免激发某些未预料到的矛盾,我将资源名称中的压制组名称替换成了SomeGroup。最后,值得提一句的是,这个资源名称指的不是文件名或者文件夹名,而是资源发布在网站上的名称,各类自动化观影工具拉取到的名称也是这个。
下图为此正则表达式对ISO、BR-DISK和MKV三类资源的发布名称的匹配,被选中状态带颜色即是匹配成功。

这几部电影的压制版本非常之多,相同类型的版本其实命名大同小异,我挑了一些比较具有代表性的。可以看到ISO和BR-DISK都匹配到了,MKV有一个误伤的。就像我上面所说,它的效果只能做到“绝大部分”,如果测试案例足够多,肯定有“漏杀”的,也有更多“误伤的”。但从我用那么久的角度来看,我觉得已经达到实用、能用、好用的地步了。
再次强调上文强调过的内容,它用了零宽后行断言,不管你是用你趁手的工具语言或者在线网站去测试资源命名,注意它是否被支持。而flag要求g和i,这条正则是要求忽略大小写的,如果匹配大小写会误伤更多的MKV,有需求可以自己去改改。再一个需要被强调的就是,它在一些配置文件导入它的场景,正则被写在双引号里面的时候会遇上反斜杠需要被转义的情况,比如上文中给出的trash-guides链接即此正则的来源里面,你直接复制的正则是带反斜杠转义的,直接复制到网站上测试会报错,需要删掉里面所有被转义的反斜杠。
实际使用
由于我当年部署这一套非常早,路径依赖的关系导致我既没有使用先前的nt也没有使用现在的mp。我用的是radarr/sonarr,具体操作比较简单,用这个正则做一个自定义格式,再给这个自定义格式打一个足够小的负分就可以了,radarr碰到此类资源的低分判断它不满足用户设置最低分的条件就会拒绝拉取它。

mp的话请各位自行看它的wiki,因为我没用过。用正则匹配去决定资源的拉取与否都是通用的方案了,几乎所有工具都会有的。
你也可以单独用在qb的RSS订阅上,在“必须包含”或者“不可包含”里写上正则就可以了。
vertex之类的工具也能用——会用vertex的朋友肯定都会写正则,我就不班门弄斧了。
到这里,分享结束,我也会继续把这套玩意用下去——毕竟,不出问题就不要去动它了,保持现状是最好的。
Q & A
Q:这个正则匹配了某些资源没达到预料的效果
A:当然,发布名称是不完全统一的,五花八门的格式造就五花八门的正则,每个人情况不一样,trash-guides的collection-of-custom-formats里有大量经过实践检验的正则,有需要复制过来根据实际情况自己改改就是了,我很多正则都改过才用的。适合自己的才是最好的。
Q:正则语法报错
A:请翻阅上文中我强调注意的内容,一是零宽后行断言的支持情况,二是反斜杠的转义,三是flag,需要全局匹配和忽略大小写。
Q:上文复制这一大串正则被识别为了网址或者其他奇奇怪怪的内容格式
A:我预料到可能会这样,但我不打算在楼下重新贴一遍了,有需要的朋友自己从trash-guides:https://trash-guides.info/Radarr/Radarr-collection-of-custom-formats/#br-disk,里面拿。再次强调,要删掉反斜杠的转义才能用。
Q:楼主会不会故意找了一些特例资源名称来说明自己的正则好用
A:那我真是吃饱了撑的,那玩意又不是我写的哈,况且不是所有人都像我这样不需要BR-DISK的,下原盘的人可是非常多的。适合自己的才是最好的,尊重所有人的所有偏好。
ISO和BR-DISK
ISO是蓝光盘的镜像文件;BR-DISK就是大家平时下载到的原盘,它里面有个BDMV文件夹,下面一堆各种类型的小文件,其中有很多m2ts,体积最大那个m2ts就是电影主要内容了,小的m2ts便是菜单花絮之类的。至于定义大家也不用咬文嚼字,我记得不是很清也懒得去搜了,这俩大概就是这么回事。
如果我们在电脑上用potplayer这类ffmpeg播放器,没有什么是放不出来的,但大家都是玩NAS的,讲究一个全自动,讲究一个整理刮削,讲究一个手机平板电脑电视这些前端无缝切换而后端服务一致,像iso单文件和BR-DISK中体积最大的那一个m2ts文件,对于不喜欢原盘的我来讲,其实很不利于资源的整理和刮削,在某些客户端场合也不利于解码播放。总之,会有人的需求像我一样,都希望资源是清一色的MKV容器。
正则表达式
^(?!.*\b((?<!HD[._ -]|HD)DVD|BDRip|MKV|XviD|WMV|d3g|BDREMUX|REMUX|^(?=.*1080p)(?=.*HEVC)|[xh][-_. ]?26[45]|German.*DL|((?<=\d{4}).*German.*(DL)?)(?=.*\b(AVC|HEVC|VC[-_. ]?1|MVC|MPEG[-_. ]?2)\b))\b)(((?=.*\b(Blu[-_. ]?ray|BD|HD[-_. ]?DVD)\b)(?=.*\b(AVC|HEVC|VC[-_. ]?1|MVC|MPEG[-_. ]?2|BDMV|ISO)\b))|^((?=.*\b(^((?=.*\b((.*_)?COMPLETE.*|Dis[ck])\b)(?=.*(Blu[-_. ]?ray|HD[-_. ]?DVD)))|3D[-_. ]?BD|BR[-_. ]?DISK|Full[-_. ]?Blu[-_. ]?ray|^((?=.*((BD|UHD)[-_. ]?(25|50|66|100|ISO)))))))).*
它来自trash-guides:https://trash-guides.info/Radarr/Radarr-collection-of-custom-formats/#br-disk。我现在用的它跟现在trash-guides里面的它是有一些区别的,事实上这个正则表达式总是“套经验”的,一直有人在维护不断在更新,但区别很小,我这里就复制的是我自己正在使用的。
看看这个正则表达式的描述:This is a custom format to help Radarr/Sonarr recognize and ignore BR-DISK (ISOs and Blu-ray folder structure) in addition to the standard BR-DISK quality.大概意思就是这个正则在标题上匹配出了电影和电视剧中ISO和BR-DISK的资源。
下图为此正则的可视化:

看完本分享后有需要的朋友可以找个这种正则可视化的网站,看着图解去修改。
注意:这条正则用了零宽后行断言,请注意你找这些测试正则/可视化正则的网站是否支持零宽后行断言,不是所有地方都支持这个的,不然就会报错。
效果
我用它也好几年了,从我的实践上来看,它的确帮我拦下了绝大部分的ISO和BR-DISK,也就是解决了像本文初提到的帖子中楼主遇到的问题。我为什么说绝大部分?因为压制组非常多加上不是所有资源命名都能很规范地被统一,滴水不漏地把所有非期望版本拒之门外是不太现实的事情,我们只要做到九成效果就足够了。
说完我自己的使用感受,现在我们再来直接匹配资源名称来试试实际效果,我找了三部蓝光热门电影中一些常见的压制资源名称,为了避免激发某些未预料到的矛盾,我将资源名称中的压制组名称替换成了SomeGroup。最后,值得提一句的是,这个资源名称指的不是文件名或者文件夹名,而是资源发布在网站上的名称,各类自动化观影工具拉取到的名称也是这个。
下图为此正则表达式对ISO、BR-DISK和MKV三类资源的发布名称的匹配,被选中状态带颜色即是匹配成功。

这几部电影的压制版本非常之多,相同类型的版本其实命名大同小异,我挑了一些比较具有代表性的。可以看到ISO和BR-DISK都匹配到了,MKV有一个误伤的。就像我上面所说,它的效果只能做到“绝大部分”,如果测试案例足够多,肯定有“漏杀”的,也有更多“误伤的”。但从我用那么久的角度来看,我觉得已经达到实用、能用、好用的地步了。
再次强调上文强调过的内容,它用了零宽后行断言,不管你是用你趁手的工具语言或者在线网站去测试资源命名,注意它是否被支持。而flag要求g和i,这条正则是要求忽略大小写的,如果匹配大小写会误伤更多的MKV,有需求可以自己去改改。再一个需要被强调的就是,它在一些配置文件导入它的场景,正则被写在双引号里面的时候会遇上反斜杠需要被转义的情况,比如上文中给出的trash-guides链接即此正则的来源里面,你直接复制的正则是带反斜杠转义的,直接复制到网站上测试会报错,需要删掉里面所有被转义的反斜杠。
实际使用
由于我当年部署这一套非常早,路径依赖的关系导致我既没有使用先前的nt也没有使用现在的mp。我用的是radarr/sonarr,具体操作比较简单,用这个正则做一个自定义格式,再给这个自定义格式打一个足够小的负分就可以了,radarr碰到此类资源的低分判断它不满足用户设置最低分的条件就会拒绝拉取它。

mp的话请各位自行看它的wiki,因为我没用过。用正则匹配去决定资源的拉取与否都是通用的方案了,几乎所有工具都会有的。
你也可以单独用在qb的RSS订阅上,在“必须包含”或者“不可包含”里写上正则就可以了。
vertex之类的工具也能用——会用vertex的朋友肯定都会写正则,我就不班门弄斧了。
到这里,分享结束,我也会继续把这套玩意用下去——毕竟,不出问题就不要去动它了,保持现状是最好的。
Q & A
Q:这个正则匹配了某些资源没达到预料的效果
A:当然,发布名称是不完全统一的,五花八门的格式造就五花八门的正则,每个人情况不一样,trash-guides的collection-of-custom-formats里有大量经过实践检验的正则,有需要复制过来根据实际情况自己改改就是了,我很多正则都改过才用的。适合自己的才是最好的。
Q:正则语法报错
A:请翻阅上文中我强调注意的内容,一是零宽后行断言的支持情况,二是反斜杠的转义,三是flag,需要全局匹配和忽略大小写。
Q:上文复制这一大串正则被识别为了网址或者其他奇奇怪怪的内容格式
A:我预料到可能会这样,但我不打算在楼下重新贴一遍了,有需要的朋友自己从trash-guides:https://trash-guides.info/Radarr/Radarr-collection-of-custom-formats/#br-disk,里面拿。再次强调,要删掉反斜杠的转义才能用。
Q:楼主会不会故意找了一些特例资源名称来说明自己的正则好用
A:那我真是吃饱了撑的,那玩意又不是我写的哈,况且不是所有人都像我这样不需要BR-DISK的,下原盘的人可是非常多的。适合自己的才是最好的,尊重所有人的所有偏好。



明月无心








