我正在尝试使用支持regex
的Advanced Renamer批量重命名我的文件。
我想匹配所有字符以排除那些字符并创建一个新的文件名,但是要保留情节数和特定词以区分例如OVA的常规情节。
我尝试了\D[^OVA]
和其他类似的设备,但是没有用:
猎人x猎人02 = 02
猎人x猎人OVA 08 = OVA 08
猎人x猎人OVA贪婪岛决赛01 = OVA岛01
答案 0 :(得分:1)
我猜您希望排除OVA和所有数字。然后,this expression可能会帮助您这样做或设计一个:
([^OVA0-9]+)*
此图显示了表达式的工作方式,您可以在此link中可视化其他表达式:
如果您希望添加要排除的单词列表,this expression可以这样做:
([\S\s]*?)([0-9]+|OVA|Any|Thing|Else|That|You|Like)
您可以使用 | 排除任何其他单词。
const regex = /([\S\s]*?)([0-9]+|OVA|Any|Thing|Else|That|Like)/gm;
const str = `Hunter x Hunter VOA Greed Island Final 01 = OVA Island 01`;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}