Please let me know what I need to do, I have ~300 albums I would like to batch edit if possible. Luckily, they are all released in the year 2000 or later so I dont have to worry about a 19-- date.
Create an action of the type "Replace with regular expression.
Enter as search string: (.)((\d\d)/(\d\d)/(\d\d))(.)
Enter as replace string: $1 20$4-$3-$2 $5
There is a formula for formatting the date from MDY to YMD ... Turn D/M/YYYY into YYYY/MM/DD
But knowing this alone will not help at all.
Mp3tag provides several ways to solve the given task.
Following there is outlined one way to go.
To get your goal you have to do some modifications to the title string.
The title string has to be splitted into components and then re-assembled into new formatted string.
TITLE is given:Record Label 001(02/01/09)Name of releaseTITLE should be:Record Label 2009-02-01 Name of releaseStep 1Modify the given string,so that it can be easily splitted into components by Mp3tag action
"Guess values (import tag-fields)"
Replace all space characters with underline characters.Replace underline characters in conjunction with round brackets with sp
ace characters.
TITLE <==$replace(%TITLE%,'','_','_(',' (',')_',') ')Result should be ...Record_Label_001(02/01/09)Name_of_releaseStep 2Run action "Guess values" using guessing pattern ...%TMP_RL%(%TMP_MDY%)%TMP_NOR%Result should be three new tag-fields(see dialog "Extended Tags...")TMP_RL = Record_Label_001TMP_MDY = 02/01/09TMP_NOR = Name_of_releaseStep 3Remove the trailing number from the Record Label ...TMP_RL <==$cutRight(%TMP_RL%,4)Step 4Modify date format MDY to YMD using the formula ...TMP_YMD <==$regexp($regexp(%TMP_MDY%,'(\d\d?)/(\d\d?)/((?:\d\d)?(?:\d?\d))','0000$3-00$1-00$2'),'0*(\d\d\d\d)-0*(\d\d)-0*(\d\d)','$1-$2-$3')Step 5Set century for the YMD date ...TMP_YMD <=='20'$cutLeft(%TMP_YMD%,2)Step 6Assemble the new title string ...TITLE <== %TMP_RL%%TMP_YMD%%TMP_NOR%Step 7Change the underline characters to space characters ...TITLE <==$replace(%TITLE%,'_','')Step 8Remove all helper tag-fields ...TMP_RL;TMP_NOR;TMP_MDY;TMP_YMD
You can put all steps into one action group ...
Begin Action Group Test_2014#20140203.eleifer.RecordLabel.MDYtoYMD
Action #2 Actiontype 5: Format value Field ______: TMP_RL Formatstring: $cutRight(%TMP_RL%,4)
Action #3 Actiontype 5: Format value Field ______: TMP_YMD Formatstring: $regexp($regexp(%TMP_MDY%,'(\d\d?)/(\d\d?)/((?:\d\d)?(?:\d?\d))','0000$3-00$1-00$2'),'0*(\d\d\d\d)-0*(\d\d)-0*(\d\d)','$1-$2-$3')
Action #4 Actiontype 5: Format value Field ______: TMP_YMD Formatstring: '20'$cutLeft(%TMP_YMD%,2)
Action #5 Actiontype 5: Format value Field _____: TITLE Formatstring: $replace(%TMP_RL% %TMP_YMD% %TMP_NOR%,'',' ')
End Action Group Test_2014#20140203.eleifer.RecordLabel.MDYtoYMD (6 Actions)
DD.20140203.0958.CET
There is also a rather short way ...
Convert | Tag - Tag | ALT+5
Field: TITLE
Format string: $regexp(%TITLE%,'^(.+?)\s\d\d\d\s((\d\d)/(\d\d)/(\d\d))\s(.+?)$','$1 20$4-$2-$3 $5')
Preview
From: Record Label 001 (02/01/09) Name of release
To : Record Label 2009-02-01 Name of release
Dude.. you are a life saver. Although you kind of over-estimated my ability to follow instructions, I somehow managed to transform my library into an OCD person's heaven. Thank you so much, this saved me hours of manual editing.