# Move "Featuring" from Artist to Title

**URL:** https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096
**Category:** Support
**Created:** [November 9, 2010, 12:13pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096 "2010-11-09T12:13:03Z")
**Posts on this page:** 20
**Page:** 3

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [December 17, 2013, 5:46pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/41 "2013-12-17T17:46:13Z")

</div>

as the referred post does not show any brackets I doubt that you had a look at the link. Please check again.

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [December 17, 2013, 8:20pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/42 "2013-12-17T20:20:42Z")

</div>

> [@daerias](#):
>
> I want convert:  
> **Artist:** 2pac feat. Nate Dogg
> 
> to....
> 
> **Artist:** 2pac  
> **Comment:** feat. Nate Dogg

Begin Action Group **Test\_2013#20131217** 

Action #1  
_Actiontype 7:_ **Import tag fields (guess values)**  
_Source format \_\_:_ **$replace(%ARTIST%,' feat. ',' feat. feat. ')**  
_Guessing pattern:_ **%ARTIST% feat. %COMMENT%**  
End Action Group **Test\_2013#20131217** (1 Action)

 

DD.20131217.2222.CET

---

<div class="post-metadata">

### Author: ![daerias](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/c89c15/32.png) [@daerias](https://community.mp3tag.de/u/daerias)
#### Post date: [December 18, 2013, 8:56am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/43 "2013-12-18T08:56:07Z")

</div>

It works! Thank you. but I have now:

Artist: 2pac'

with a apostrophe

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [December 18, 2013, 11:39am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/44 "2013-12-18T11:39:25Z")

</div>

> [@daerias](#):
>
> thanks it works! but how can I remove _feat.+_ from my %artist%?

Ok, it works.

Now you have a new problem?  
Please describe or illustrate the new situation.

DD.20131218.1340.CET

---

<div class="post-metadata">

### Author: ![daerias](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/c89c15/32.png) [@daerias](https://community.mp3tag.de/u/daerias)
#### Post date: [December 18, 2013, 1:46pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/45 "2013-12-18T13:46:57Z")

</div>

sry my fault! anything is OK! Thank you very much!

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [December 18, 2013, 4:00pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/46 "2013-12-18T16:00:33Z")

</div>

> [@daerias](#):
>
> My "feat." tag is now in my comment-field. Now I want to remove the "feat..." and the words that follow the "feat." from the %ARTISTS% (sso I have only 1 Artist). How can I do this? Thank you very much!

Maybe I misunderstand the situation ... back to your example ...

> [@](#):
>
> I want convert:  
> Artist: 2pac feat. Nate Dogg  
> to....  
> Artist: 2pac  
> Comment: feat. Nate Dogg

After applying the given proposal using action "Import tag fields " there is no more " feat. ..." in the ARTIST tag-field.

DD.20131218.1800.CET

---

<div class="post-metadata">

### Author: ![daerias](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/d/c89c15/32.png) [@daerias](https://community.mp3tag.de/u/daerias)
#### Post date: [December 25, 2013, 10:25am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/47 "2013-12-25T10:25:30Z")

</div>

How could I combine all the cases into one action?

If **%artist% OR %albumartist"**  **HAS** : "feat." OR "Feat." OR "feat" OR "feat." OR "&" OR "and" ..... Then **MOVE** : "anything with feat/and/& .... and anything after this to the %title% in the "()"

could someone explain me please step by step how can I write this script. I want understand how it works 🙂

Thank you so much!

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [December 25, 2013, 1:12pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/48 "2013-12-25T13:12:38Z")

</div>

> [@daerias](#):
>
> How could I combine all the cases into one action? ...

At first we need to determine which cases may occur.  
Please edit and complete the following list of possible cases and give for each case an example for the wanted result.  
Consider also possible brackets "[({\<])}\>".

```
ALBUMARTIST or                                                                  
ARTIST before ... ARTIST after ... TITLE after ...                
=============================================================================== 
a ft b ==>                                                    
a ft. b ==>                                                    
a feat b ==>                                                    
a feat. b ==>                                                    
a featuring b ==>                                                    
                         ==>                                                    
a ft b & c ==>                                                    
a ft. b & c ==>                                                    
a feat b & c ==>                                                    
a feat. b & c ==>                                                    
a featuring b & c ==>                                                    
                         ==>                                                    
a ft b and c ==>                                                    
a ft. b and c ==>                                                    
a feat b and c ==>                                                    
a feat. b and c ==>                                                    
a featuring b and c ==>                                                    
                         ==>                                                    
a ft b & c and d ==>                                                    
a ft. b & c and d ==>                                                    
a feat b & c and d ==>                                                    
a feat. b & c and d ==>                                                    
a featuring b & c and d ==>                                                    
                         ==>                                                    
a ft b, c & d ==>                                                    
a ft. b, c & d ==>                                                    
a feat b, c & d ==>                                                    
a feat. b, c & d ==>                                                    
a featuring b, c & d ==>                                                    
                         ==>                                                    
a ft b, c and d ==>                                                    
a ft. b, c and d ==>                                                    
a feat b, c and d ==>                                                    
a feat. b, c and d ==>                                                    
a featuring b, c and d ==>                                                    

```

DD.20131225.1513.CET

---

<div class="post-metadata">

### Author: ![Lupo](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c68b51/32.png) [@Lupo](https://community.mp3tag.de/u/Lupo)
#### Post date: [January 23, 2014, 6:34pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/49 "2014-01-23T18:34:55Z")

</div>

Hey guys, I was reading throug thie thread and tried some of the examples, but nothing is working for me, or I'm too stupid.

So here is my problem. This ist what I have:

- Escape By Night - Shadows & Mist (feat. Felicia Farerre)

And this ist what I want:

- Escape By Night feat. Felicia Farerre - Shadows & Mist (feat. Felicia Farerre)

I can't figure out, how I should do it. Please help me.  
Kind regards.

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [January 23, 2014, 7:19pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/50 "2014-01-23T19:19:37Z")

</div>

> [@Lupo](#):
>
> ... So here is my problem.  
> This ist what I have:  
> Escape By Night - Shadows & Mist (feat. Felicia Farerre) ...

At first please explain, where is the text string stored 'what you have'?  
Is it the filename?  
Is it one or more tag-fields of which name?  
How do you usually construct this text string, from what tag-fields?

DD.20140123.2120.CET

If the text string resides in the filename, then you can use the converter "Filename - Filename" ...

 

**Convert** | **Filename - Filename** | **ALT+3**  
Old filename pattern:  
**%1 - %2 (feat. %3)**  
New filename pattern (formatstring):

 **%1' feat. '%3' - '%2' (feat. '%3')'** 

Preview  
**Escape By Night feat. Felicia Farerre - Shadows & Mist (feat. Felicia Farerre).mp3**

 

If the text string resides in a tag-field, then you may use the action "Guess values".

If the text string resides in two tag-fields, then you may use some trick from this thread, which also applies the action "Guess values".

**Old tag-field values: Escape By Night _Part1_ Shadows & Mist (feat. Felicia Farerre) _Part2_ (_Part3_) New tag-field values: _Part1 Part3_ Escape By Night feat. Felicia Farerre _Part2_ (_Part3_) Shadows & Mist (feat. Felicia Farerre)**

DD.20140123.2347.CET

---

<div class="post-metadata">

### Author: ![Lupo](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c68b51/32.png) [@Lupo](https://community.mp3tag.de/u/Lupo)
#### Post date: [January 24, 2014, 4:03pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/51 "2014-01-24T16:03:39Z")

</div>

[EN]:

> Thanks for your fast respond. All I have are the filenames. No tag is filled yet. If I use your example, it is working nearly right, but there will be an apotstrophe left at the end of the filename.

[DE]:

> Danke für deine schnelle Antwort. Alles was ich habe sind die Dateinamen. Die Tags sind nicht ausgefüllt. Wenn ich dein Beispiel nutze, dann klappt es soweit gut, allerdings bleibt ein Apostroph am Ende des Dateinamens.

Filename  
3LAU, Paris & Simo - Escape **(feat. Bright Lights)** (Faraway Skies Remix)

Wanted filename  
3LAU, Paris & Simo **feat. Bright Lights** - Escape (Faraway Skies Remix)

Any suggestions?  
Irgendwelche Vorschläge?

**/Edit:** I just used to leave the apostrophe and everything is ok.

```
Old filname pattern
%1 - %2 (feat. %3) (%4) (%5)

New filename pattern
%1 feat. %3 - %2 (%4) (%5)

```

**Before:**  
Daft Punk - Get Lucky (feat. Pharrell Williams) (Daughter Cover) (Pretty Pink Edit)  
**After:**  
Daft Punk feat. Pharrell Williams - Get Lucky (Daughter Cover) (Pretty Pink Edit)

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [January 24, 2014, 9:07pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/52 "2014-01-24T21:07:27Z")

</div>

> [@Lupo](#):
>
> ... No tag is filled yet....

I can only recommend to fill the tags - if the filenames already have so much information then it should be easy to copy that information from the filename to the tags - see Convert\>Filename - Tag.  
The good thing about separating information into fields is that you get structured information instead of a single amourphous string.  
Also, the filename has several restrictions in respect to illegal characters as well as total length.  
So, before you fiddle around with the filename, fill the tags first.

---

<div class="post-metadata">

### Author: ![Chris75](https://community.mp3tag.de/user_avatar/community.mp3tag.de/chris75/32/228_2.png) [@Chris75](https://community.mp3tag.de/u/Chris75)
#### Post date: [May 25, 2014, 1:33pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/53 "2014-05-25T13:33:29Z")

</div>

> [@pone](#):
>
> Action: Guess Values  
> Source Format: %title% $regexp(%artist%,(._) Feat. (._),'('Feat. $2')' +++ $1)  
> Guessing Pattern: %title% +++ %artist%

This is AWESOME looking, I only have one problem, 1. I have no idea how to implement it (as in, where exactly is this Guess Value option) and 2. Is there a way to do it without the parenthesis enclosing the "Feat."?

All or any help is welcome...

-chris

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [May 25, 2014, 3:39pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/54 "2014-05-25T15:39:54Z")

</div>

> [@Chris75](#):
>
> ...where exactly is this Guess Value option...

See the help: [https://docs.mp3tag.de/actions](https://docs.mp3tag.de/actions)

---

<div class="post-metadata">

### Author: ![malganis](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/m/8dc957/32.png) [@malganis](https://community.mp3tag.de/u/malganis)
#### Post date: [October 17, 2015, 9:28am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/55 "2015-10-17T09:28:37Z")

</div>

> [@pone](#):
>
> Action: Guess Values  
> Source Format: %title% $regexp(%artist%,(._) Feat. (._),'('Feat. $2')' +++ $1)  
> Guessing Pattern: %title% +++ %artist%

I apologize for reviving this thread. I've adapted your regex to my specific situation but i can't get it to parse capital letters such as follows:

I have:

ARTIST: SIS  
TITLE: Sombra india feat. eduardo castillo (Eduardo Castillo remix)

I want:

ARTIST: SIS feat. Eduardo Castillo  
TITLE: Sombra india (Eduardo Castillo remix)

My regex:

Action: Guess Values  
Source Format: `%artist% $regexp(%title%,(.*)\s(feat\.)\s(.*)\s(\(.*\)),feat. $caps2($3) +++ $1 $4)`  
Guessing Pattern: `%artist% +++ %title%`

It doesn't return "eduardo castillo" in uppercase letters. Where did i go wrong?

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [October 17, 2015, 9:55am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/56 "2015-10-17T09:55:45Z")

</div>

> [@Mal'Ganis](#):
>
> ... It doesn't return "eduardo castillo" in uppercase letters. Where did i go wrong?

You have mixed something into the $regexp() function, which might be not allowed ... or does not work per se, ... which is here ... the function $caps2().

You may do what you want in a following second step ...

Action "Format value"  
Tag-Field : ARTIST  
Formatstring: `$regexp(%ARTIST%,'^(.+\sfeat.\s)(.*)$','$1')$regexp($regexp(%ARTIST%,'^(.+\sfeat.\s)(.*)$','$2'),'\b\w*\b','\u$0')`  
... or ...  
Formatstring: `$regexp(%ARTIST%,'^(.+\sfeat.\s)(.*)$','$1')$caps2($regexp(%ARTIST%,'^(.+\sfeat.\s)(.*)$','$2'))`

From: "SIS feat. eduardo castillo"  
To : "SIS feat. Eduardo Castillo"

DD.20151017.1444.CEST

---

<div class="post-metadata">

### Author: ![malganis](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/m/8dc957/32.png) [@malganis](https://community.mp3tag.de/u/malganis)
#### Post date: [October 19, 2015, 4:40am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/57 "2015-10-19T04:40:04Z")

</div>

> [@DetlevD](#):
>
> You have mixed something into the $regexp() function, which might be not allowed ... or does not work per se, ... which is here ... the function $caps2().
> 
> You may do what you want in a following second step ...

I've filled the source field with `$regexp(%ARTIST%,'^(.+\sfeat.\s)(.*)$','$1')$caps2($regexp(%ARTIST%,'^(.+\sfeat.\s)(.*)$','$2'))` and `%artist% +++ %title%` as the guessing pattern but the engine didn't output the desired result. Should it be done in two separate actions? Or there's something wrong in the guessing pattern perhaps?

---

<div class="post-metadata">

### Author: ![DetlevD](https://community.mp3tag.de/user_avatar/community.mp3tag.de/detlevd/32/123_2.png) [@DetlevD](https://community.mp3tag.de/u/DetlevD)
#### Post date: [October 19, 2015, 5:25am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/58 "2015-10-19T05:25:53Z")

</div>

> [@Mal'Ganis](#):
>
> I've filled the source field with ... and ... as the guessing pattern but the engine didn't output the desired result. Should it be done in two separate actions? Or there's something wrong in the guessing pattern perhaps?

As I said, my proposal works as the second step in your workflow.

1. Guess the values from ARTIST and TITLE.
2. Then additional formatting on the tagfield ARTIST.

DD.20151019.0925.CEST

---

<div class="post-metadata">

### Author: ![malganis](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/m/8dc957/32.png) [@malganis](https://community.mp3tag.de/u/malganis)
#### Post date: [October 19, 2015, 6:42am UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/59 "2015-10-19T06:42:29Z")

</div>

> [@DetlevD](#):
>
> As I said, my proposal works as the second step in your workflow.
> 
> 1. Guess the values from ARTIST and TITLE.
> 2. Then additional formatting on the tagfield ARTIST.
> 
> DD.20151019.0925.CEST

Much appreciated for the clarification! 🙂

---

<div class="post-metadata">

### Author: ![krissasaur](https://community.mp3tag.de/user_avatar/community.mp3tag.de/krissasaur/32/5606_2.png) [@krissasaur](https://community.mp3tag.de/u/krissasaur)
#### Post date: [January 25, 2016, 5:50pm UTC](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096/60 "2016-01-25T17:50:19Z")

</div>

I hope it is okay that I post on such an old thread, as I feel this is related, and it is the first thing to come up in a google search.

I was wondering how I would move the ENTIRE artist field to the title.

**I have:**  
Arist: Benny Dayal, Anushka Manchanda, Shefali Alvaris  
Title: Ek Main Aur Ekk Tu

**I want:**  
Arist: %albumartist% (Or leave it blank.)  
Title: Ek Main Aur Ekk Tu (Feat. Benny Dayal, Anushka Manchanda, Shefali Alvaris)

Thank you!!

**EDIT:**  
I was over thinking things. I got it. For anyone as dumb as me:

![](https://community.mp3tag.de/uploads/default/original/2X/b/b42f8b1d95dcc7b5291376feded7d5337b11df87.png)  
  
 ![](https://community.mp3tag.de/uploads/default/original/2X/2/22ecb800574a70105e5bc9c7adaa46e239002803.png)

![](https://community.mp3tag.de/uploads/default/original/2X/b/b42f8b1d95dcc7b5291376feded7d5337b11df87.png)

![](https://community.mp3tag.de/uploads/default/original/2X/2/22ecb800574a70105e5bc9c7adaa46e239002803.png)

[Previous page](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096.md?page=2)

[Next page](https://community.mp3tag.de/t/move-featuring-from-artist-to-title/11096.md?page=4)
