Convert artist field (Artist1, Artist2, Artist3) to be placed in Title field as (feat. Artist 2, Artist 3)



I tried using this thread for some help but I couldn't get it working. It works if I change the artist field to Artist 1\\Artist2 manually, but if I try and replace all commas into \\ it doesn't work.

How my library is currently formatted and how I want the library to be formatted

Can anyone help me out? Thanks.


Can't you just show here in the forum in writing what contents of the artist field looks like and what the title field looks like?

Also, I think that you mix a single artist field with just a long string of names in it with a multi-value field of the type ARTIST which should be merged before you process it. But I could be wrong.


Sorry, I'm new to this! I don't really understand what you mean.

When I try to run the following:

%TITLE%$iflonger($meta(ARTIST,1),0,' (feat. '$regexp($cutRight($replace($meta(ARTIST)', ',%ALBUMARTIST%', ',),$len(', ')),'^(.+),(.+)$','$1 &$2')')',)

It doesn't reformat the title unless the artists are seperated using \\. So if I tried to convert all of the commas (which currently seperate the artist like 'A$AP Rocky, Drake') into \\ I expected it to work, but this only works if add the \\ manually.


refers to a multi-value field. So you would have to check if you really got one. You can see that in the extended tags dialogue (Alt-T) where you would not see just one field of the type ARTIST but many.
If you have just one, then the $meta() function is not needed.

And that is why I asked you to show what you have got in the field ARTIST in text form.


Ah, I see.

I currently have Artists it in the following format:

6LACK, Offset

I would like to remove the Offset from the Artist tag and put it in the title:

Balenciaga Challenge (feat. Offset)

And when running that code, it doesn't work. How would I get it to work with commas instead of the multi-value fields? Or is there a way to convert it into seperate fields automatically?


Oops, I removed the $meta bit and it works but it causes problems if there are no features.

If the artist field has only the main artist, how would I make it so that track is ignored?

How the library looks after running the following code:
%TITLE%$iflonger(ARTIST,0,' (feat. '$regexp($cutRight($replace($meta(ARTIST)', ',%ALBUMARTIST%', ',),$len(', ')),'^(.+),(.+)$','$1 &$2')')',)


Just an idea:
you could also use an action group with the following action:
GUess value
Source: %artist%
Pattern: %artist%, %feat_artist%

Format value for TITLE
Format string: %title%[ (feat. %feat_artist%)]

Remove field: feat_artist
(this last action carry out when you found out that the other actions lead to the right result as you would otherwise loose the featured artists).


I was able to do it! It was probably ineffecient, but it got the job done. Since this will be the only time I'll need to do it on such a large library so I don't mind doing the second step manually.

I filtered my library with the following conditions:

artist HAS "," AND title NOT HAS "feat."

Then ran the following code against the results:

%TITLE%$iflonger(ARTIST,0,' (feat. '$regexp($cutRight($replace($meta(ARTIST)', ',%ALBUMARTIST%', ',),$len(', ')),'^(.+),(.+)$','$1 &$2')')',)