深色模式
识别词与词表
NanShare 的文件整理会先解析文件名,再识别 TMDB、豆瓣、季集、分辨率、特效、编码、制作组、自定义捕获变量,最后根据重命名模板渲染目标路径。识别词与词表就是用于干预这些阶段的规则集合。
本章节拆成四个独立页面:
| 页面 | 作用阶段 | 常用目标 |
|---|---|---|
| 自定义识别词 | 名称解析前 | 删除噪声、替换标题、指定 TMDB、修正季集、集数偏移 |
| 自定义制作组 | 名称解析中 | 识别压制组、字幕组、发布组,填充 releaseGroup |
| 自定义捕获词 | 名称解析中 | 从文件名提取额外变量,填充 customCapture 或自定义模板变量 |
| 渲染后处理词 | 模板渲染后 | 清理最终路径、统一大小写、处理连续符号、替换渲染结果 |
执行顺序
整理时大致顺序如下:
text
原始文件名
-> 自定义识别词预处理
-> 内嵌 TMDB / 季集 / 类型信息提取
-> 名称解析、TMDB / 豆瓣 / OpenAI 辅助识别
-> 自定义制作组识别
-> 自定义捕获词识别
-> 重命名模板渲染
-> 渲染后处理词清理
-> 输出目标路径不同规则处理的是不同对象:
- 自定义识别词处理的是“识别前标题”。
- 自定义制作组和自定义捕获词主要匹配“识别词处理后的原始标题”。
- 渲染后处理词处理的是“模板渲染后的最终路径”。
通用规则
四类规则都遵循这些基本习惯:
- 一行一条规则。
- 空行会忽略。
#开头表示注释。- 大多数匹配写法支持正则表达式。
- 默认区分大小写,使用
(?i)可忽略大小写。 - 替换语法里的箭头必须写成
=>,两边都有空格。 - 集数偏移语法里的分隔符必须写成
<>和>>,两边都有空格。
示例:
text
# 注释
(?i)web-dl => WEB-DL
PROPER模板字段
这些词表常用的模板字段:
| 字段 | 来源 |
|---|---|
| 自定义制作组或末尾 -Group 自动识别 |
| releaseGroup 的别名,通知模板里常见 |
| 自定义捕获词默认字段 |
| 自定义捕获词 正则 >> 变量名 生成 |
默认重命名模板里已经包含 customCapture 和 releaseGroup:
jinja
{{title}} ({{year}}) {tmdbid-{{tmdbid}}}/{{en_title}}.{{year}}.{{part}}.{{webSource}}.{{resourceType}}.{{videoFormat}}.{{videoCodec}}.{{audioCodec}}.{{effect}}.{{bitDepth}}.{{fps}}-{{customCapture}}-{{releaseGroup}}{{fileExt}}如果捕获词定义了命名变量,例如:
text
(?i)(IMAX|REMUX) >> editionTag模板可以直接使用:
jinja
{{ editionTag }}快速选择
想修正识别标题,用自定义识别词:
text
庆余年 第二季 => 庆余年 S02想识别文件名末尾的压制组,用自定义制作组:
text
HHWEB
WiKi想从文件名提取 IMAX、Director's Cut 这类额外标签,用自定义捕获词:
text
(?i)(IMAX|Director's Cut|REMUX)想修改最终渲染路径,用渲染后处理词:
text
-- => -
\.{2,} => .测试建议
保存规则后,建议用几个典型文件名测试:
text
Joy.of.Life.第二季.E13.2160p.WEB-DL.H265.AAC-HHWEB.mkv
FAIRY TAIL - 100 YEARS QUEST - 03 [1080p][CHD].mkv
JoJo's Bizarre Adventure.S01E01.1080p.WEB-DL.mkv
Dune.Part.Two.2024.IMAX.2160p.WEB-DL.DV.Atmos-GROUP.mkv测试时关注:
- 标题是否被替换成预期内容。
- TMDB ID、媒体类型、季集是否正确。
releaseGroup是否命中。customCapture和命名变量是否能在模板里渲染。- 渲染后处理词是否只影响最终路径,没有误伤标题识别。