Regex 如何提取mp3标题(字符串)的一部分,用正则表达式命名mp3tag中的新标签?

Regex 如何提取mp3标题(字符串)的一部分,用正则表达式命名mp3tag中的新标签?,regex,Regex,我正在尝试使用该程序提取一首歌曲的指定键,每个键包含在许多mp3文件中 mp3 filnames中音乐键左侧的字符数是恒定的(29个字符),因此我成功地使用嵌入在$regexp(x,expr,repl)函数中的$left(x,n)函数对其进行了剪切 但我的具体问题是音乐键右侧的字符数可变-因为它是可变的,所以我无法有效地使用$right(x,n)功能。我想使用函数组合$len(x)和$right(x,n)从剩余的字符串中减去音乐键,但看不出如何使用音乐键右侧的可变字符数 整个要点是有一个干净的标

我正在尝试使用该程序提取一首歌曲的指定键,每个键包含在许多mp3文件中

mp3 filnames中音乐键左侧的字符数是恒定的(29个字符),因此我成功地使用嵌入在
$regexp(x,expr,repl)
函数中的
$left(x,n)
函数对其进行了剪切

但我的具体问题是音乐键右侧的字符数可变-因为它是可变的,所以我无法有效地使用
$right(x,n)
功能。我想使用函数组合
$len(x)
$right(x,n)
从剩余的字符串中减去音乐键,但看不出如何使用音乐键右侧的可变字符数

整个要点是有一个干净的标记列,其中包含每个曲目的所有关键点(无需逐个手动发回所有收藏:)。 我扫描了这里给出的函数,但我看不出这些其他函数的哪种组合可以将可变数量的字符剪切到音乐键的右侧:

(mp3tag功能-

我的问题: 如何使用其他功能或完全不同的更简单方法来实现这一点?

到目前为止,我确实在mp3 filname的帮助下,在音乐键的左侧剪切了恒定的29个字符:

标记-标记(转换向导)

$regexp(x,expr,repl)
(mp3tag函数-

$left(x,n)
(mp3tag函数-idem)

$right(x,n)
(mp3tag函数-idem)

例如:

想要的结果(在新的标记列中提取DAG音乐键):

D

A

G

从文件名:

510-D小调键盘奏鸣曲,K.517(L.266)。mp3

026-大调键盘奏鸣曲,K.26(L.368)。mp3

031-G小调键盘奏鸣曲,K.31(L.231)。mp3

第一个操作标签-标签($left(x,n)功能): 剪切前29个字符 (空白('')的相关空格:031-\u键盘奏鸣曲 在
$regexp(x,expr,repl)
函数中使用嵌入的
$left(x,n)
函数:

详情如下:

使用的功能:

$regexp(x,expr,repl)

$left(x,n)

//函数的嵌入

$regexp(x,
$left(x,n)
,repl)

//字符串分配(
$left(x,n)
函数中的参数字符串)

$regexp(x,$left(
%initialkey%
,n),repl)

//说明从第1个字符到音乐键字符(D、A、G等)要剪切/作废的字符数(所有mp3文件的数字相同(29个字符))

$regexp(%initialkey%,$left(%initialkey%,
29
),“”)

//字符串分配(
$regexp(x,expr,repl)
函数中的参数字符串)

$regexp(
%initialkey%
,$left(%initialkey%,29),repl)

//使用regexp函数的无字符参数替换作废/切割 (
'
$regexp(x,expr,repl)
函数中作废字符串替换参数)

$regexp(%initialkey%),$left(%initialkey%,29),
'

非常感谢你的帮助

使用的参考号:


我发现使用免费程序有以下更简单的方法

它有一个很酷的内置删除功能,甚至还有一个惊人的Javascript脚本编辑器

我使用的解决方案是:

基本上:

为了简单起见,我输入了100个要删除的字符,从音乐键后的1个索引/位置开始。我输入了任意100个字符来删除,因为所有mp3文件标题在音乐键后少于100个字符。 如果您的案例有更多,请输入1000:)

以下是该过程的图片:

第一步。删除前29个字符

第一步结果

第二步。删除音乐键后面的所有字符

第二步结果

以下是高级重命名器和其他酷重命名方法的指南: