Hello. I am new to the site but have been searching the boards for some time. I finally decided to post since I am having alil trouble in this renaming process.
Below are some examples of how the filenames are currently displayed upon opening the folder.
1. artist - name of song
This is the basic setup. Nothing needs to be done here because as I scroll down the folder, the artist will list in alphabetical order.
However, when I start getting filenames like the ones listed below...
2. artist ft artist2 - name of song
3. artist ft artist2 - name of song (Clean)
4. artist ft artist2 - name of song (Clean) (Remix Name)
5. artist ft artist2 & artist3 - name of song (Clean) (Remix Name)
6. artist vs artist2 vs artist3 - name of song (Remix Name)
7. artist & artist2 ft artist3 - name of song (Remix Name)
8. artist ft artist2 - name of song - Remix Name
...they are further down the list as far as alphabetical order because of (ft, vs, &).
I am wanting to keep the first artist (the original artist of the song) and have all other artist listed behind the song name in parenthesis in the filename like the examples below.
2. artist - name of song (ft artist2)
3. artist - name of song (ft artist2) (Clean)
4. artist - name of song (ft artist2) (Clean) (Remix Name)
5. artist - name of song (ft artist2 & artist3) (Clean) (Remix Name)
6. artist - name of song (vs artist2 vs artist) (Remix Name)
7. artist & artist2 - name of song (ft artist3) (Remix Name)
8. artist - name of song (ft artist2) - Remix Name
This method of renaming would keep the original as well as all remixes of the particular song grouped together in the folder.
I came up with this regular expression but it still is not getting the results I want.
MATCH: ([^-]+)(ft)([^-]+\w)\s*-\s*(.*)([\(])(.+)([\)])
REPLACE :\1- \4(\2\3) \5\6\7
I am also getting this with the above regExp
4. artist - name of song (Clean) (ft artist2) (Remix Name)
This is not ideal since (ft artist2) is between (Clean) (Remix Name).
I am ok if multiple RegEx need to be used.
Any help would be greatly appreciated.