Create an action group that has the following actions
1 - Action to copy the feat artist from title to artist:
Format tag field
Field: artist
String: %artist% & $mid(%title%,$add($strstr(%title%,'Feat.'),6),$len(%title%))
2- Action to cut the feat artist from title
Format tag field
Field: title
String: $left(%title%,$strstr(%title%,' Feat.'))
3- a little hygiene
Format tag field
Field: title
String=$trim(%title%)
(as always: try it with one track first before you spoil your collection)
1 - Action to copy the feat artist from title to artist:
Format tag field
Field: artist
String: %artist% & $mid(%title%,$add($strstr($lower(%title%),'feat.'),6),$len(%title%))
2- Action to cut the feat artist from title
Format tag field
Field: title
String: $left(%title%,$strstr($lower(%title%),' feat.'))
Sorry for barging in on this topic but my problem is quite similar so I thought why not post it here.
What I have: Artist: Copyright feat Mr. V, Miss Patty Title: In Da Club (Shake Shit Up)
I need: Artist: Copyright Title: In Da Club (Shake Shit Up) feat Mr. V, Miss Patty
I have modified your solution above to:
1st Format
Format Value Field: TITLE Format string: %title% feat $mid(%artist%,$add($strstr($lower(%artist%),' feat'),6),$len(%artist%))
2nd Format
Format Value Field: ARTIST Format string: $left(%artist%,$strstr($lower(%artist%), feat))
But the only prob is that there is ONE trailing space after the artist once I do the action. I have the trim trailing spaces action but I am scratching my head as to why this is happening.
because $strstr($lower(%artist%), feat) gives you the number of the first occurecence of " feat" and that is where the first character of " feat" occurs.
feat in title AFTER (brackets)
before Artist: Abel Ramos, Rozalla feat Rozalla Title: Where Is The Love (Nicky Romero Remix)
after Artist: Abel Ramos, Rozalla Title: Where Is The Love (Nicky Romero Remix) feat Rozalla
feat in title BEFORE (brackets)credit goes to pone also
before Artist: Abel Ramos, Rozalla feat Rozalla Title: Where Is The Love (Nicky Romero Remix)
after Artist: Abel Ramos, Rozalla Title: Where Is The Love feat Rozalla (Nicky Romero Remix)
... using $len(%artist%) as the third parameter of the $mid function is not quite correct, because in this case the value of $len(%artist%) points far beyond the right edge of the ARTIST field length.
However it works, but only because the programmer has implemented intelligent error checking and programmatically limits the length value to the maximal size of the real length of the field content.
feat in title AFTER (brackets)
before Artist: Abel Ramos, Rozalla feat Rozalla Title: Where Is The Love (Nicky Romero Remix)
after Artist: Abel Ramos, Rozalla Title: Where Is The Love (Nicky Romero Remix) feat Rozalla
feat in title BEFORE (brackets)credit goes to pone also
before Artist: Abel Ramos, Rozalla feat Rozalla Title: Where Is The Love (Nicky Romero Remix)
after Artist: Abel Ramos, Rozalla Title: Where Is The Love feat Rozalla (Nicky Romero Remix)
Hi there, i'm having the same issue but struggling to setup the actions (sorry, real n00b). Would it be possible for you to send me a copy of your config so I can import it?
You do not tell if the composer field is already filled with something.
If it is empty, you can create an action of the type
Guess value for %TITLE%
and guessing pattern
Of course doesn't that work as the found pattern does not match the guessing pattern.
If your example is typical then use this pattern:
%title% (Feat. %composer%)
Yes, there are ways to keep the old information but that makes it more complicated. So perhaps you check first if the current composers hold valid pieces of information and then do the bulk-transfer of featured artists for empty composer fields and then treat the special cases.
In General:
Split the source field with an action of the type "Guess value" into
%title% (Feat. %tmp_feat%)
Here you have to create a separate approach for each separating word of your examples.
"Feat." is not like "(Feat." or "Featuring"
Add the contents of %tmp_feat% to ARTIST with and action of the type "Format value":
Format string: %artist% feat. %tmp_feat%
And finally remove the user-defined field %tmp_feat%.
I'm looking for a simple way (if there is one) to move example from song title (Feat. Kayne West & T-Pain) to the artist field where (Feat. Kayne West & T-Pain) would appear just after main artist with a space before (Feat. Kayne West & T-Pain)