Fancy Tag to File Rename

When saving my MP3Tagged files I use the following format:

DRIVE:/GOLD DATE/SUB DIR/ARTIST/ARTIST - TITLE {LENGTH(BIT RATE)}

For Example:

U:/GOLD 20 MAY 2010/BBB/Beatles/Beatles - All You Need Is Love {03:49(320)}

The reason for the sub directory is that I have about 40K tracks. Keeping them in sub directories makes maintenance much easier. The "GOLD" is my clue that I have worked over the tags and the tracks are ready for inclusion into playlists. The problem with using the sub directory structure is that I have to keep a list of 26 sub directories in the TAG >> FILENAME list. But the magic of MP3Tag allows me to keep keep the list to a more manageable size.

This is the TAG >> Filename entry with the sub directory hard-coded:
u:\GOLD %_date%\BBB\%artist%\%artist% - %title%

With a little help from my friends at MP3Tag and the ability to use functions in file renaming, the entry looks like this:
u:\GOLD %_date%$repeat($left(%artist%,1),3)\%artist%\%artist% - %title%

The $left(%artist%,1) retrieves the left-most character from the artist field. The $repeat($left(%artist%,1),3) just repeats this character 3 times. Now I have just one entry that handles all 26 letters.

I'm now working on using $isdigit(x) to allow me to rename "5th Dimension" into a special NUMBERS sub direcory. I'll let you know how that works out.

Regards,
Dr. Spiff

Here is the next phase of my fancy renamer:

u:\GOLD %_date%$if($isdigit($left(%artist%,1)),NUMBERS,$repeat($left(%artist%,1),3))\%artist%\%artist% - %title%

The interesting part is: $if($isdigit($left(%artist%,1)),NUMBERS,$repeat($left(%artist%,1),3))

The $if asks the question: Is the 1st character of the %artist% a digit or letter?
If the 1st character is a digit, then the file goes into the "NUMBERS" sub directory.
If the 1st character is not a digit, then the file goes into the appropriate sub directory.

Think about the potential uses for this kind of decision making... Imagine that you wanted to put all your tracks into sub directories by bit rates. Or...

Regards,
Dr. Spiff