how to move (feat.) from title to artist - HELP

can somebody please help me with my only problem ??

I Have the tags like this:

artist: Akon

Title: Give It To Em feat. Rick Ross

i want to make like this:

artist: Akon & Rick Ross

title: Give It To Em

i already have an action to replace (feat. - featuring. - ft.) to (&)

thank u in advance

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)

it didn't work !!

it edited the tag from:

artist: Akon

Title: Give It To Em feat. Rick Ross

to:

artist: Akon & It To Em feat. Rick Ross

title: [blank]

it removed the first word from the title then it moved it all !!

In the string change Feat. to feat.

or this is for both cases

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.'))

thank u, it worked :slight_smile:

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.

eg
Artist: Copyright_

_ represents the trailing space.

Thanks in advance.

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.

Solution:
$left(%artist%,$add($strstr($lower(%artist%), feat),-1))

Thanks pone THIS WORKS

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

[#0]
T=5
F=TITLE
1=%title% feat $mid(%artist%,$add($strstr($lower(%artist%),' feat'),6),$len(%artist%))

[#1]
T=5
F=ARTIST
1=$left(%artist%,$add($strstr($lower(%artist%), feat),-1))
THIS WORKS

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)

[#0]
T=7
F=$regexp(%artist%,(.*) feat (.*),$1,1) - $regexp(%title%,(.*) \\\\((.*)\\\\),$1,1)$mid(%artist%,$strstr($lower(%artist%), feat),999)$mid(%title%,$strstr(%title%,' ('),999)
1=%artist% - %title%

Thanks once again pone

A little bit of nitpicking, but ... regarding this expression ...

$mid(%artist%,$add($strstr($lower(%artist%),' feat'),6),$len(%artist%))

... 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.

DD.20110312.2250.CET

QUOTE (stevehero @ Mar 12 2011, 21:34) <{POST_SNAPBACK}>
Thanks pone THIS WORKS

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

[#0]
T=5
F=TITLE
1=%title% feat $mid(%artist%,$add($strstr($lower(%artist%),' feat'),6),$len(%artist%))

[#1]
T=5
F=ARTIST
1=$left(%artist%,$add($strstr($lower(%artist%), feat),-1))
THIS WORKS

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)

[#0]
T=7
F=$regexp(%artist%,(.*) feat (.*),$1,1) - $regexp(%title%,(.*) \\\\((.*)\\\\),$1,1)$mid(%artist%,$strstr($lower(%artist%), feat),999)$mid(%title%,$strstr(%title%,' ('),999)
1=%artist% - %title%

Thanks once again pone

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?

Many thanks
mikeparkie

I know, I'm grave digging this post, and I'm sorry about that, but my problem is so similar, and I just can't seem to get the damn thing right.

I want to move feat. from the title to the composer field, how do I do this?

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

%title% feat. %composer%

This moves the part behind "feat." to COMPOSER.

That doesn't work, nothing happens when I try to use it.

the songs title is "Bang Bang Pow Pow (Feat. Lil Wayne)"

Also, some of my songs also have other info in the composer tag, is there a way to keep both the old composer info, and the new composer info?

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.

Hello,
i have the same Problem and i want something like this:

Before:
Title: Hell Yeah Feat. Milla
Artist: DJ Rapture & Jonn Hart

After:
Title: Hell Yeah
Artist: DJ Rapture & Jonn Hart Feat. Milla

And:
Before:
Title: Hell Yeah (Feat. Milla)
Artist: DJ Rapture & Jonn Hart

After:
Title: Hell Yeah
Artist: DJ Rapture & Jonn Hart Feat. Milla

And:
Before:
Title: Hell Yeah featuring Milla
Artist: DJ Rapture & Jonn Hart

After:
Title: Hell Yeah
Artist: DJ Rapture & Jonn Hart Feat. Milla

It would be nice if someone can help me :slight_smile:

No. This is something else.

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%.