# Extracting title and artist from title using action and then reorganise the display order in the title

**URL:** https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464
**Category:** Support
**Created:** [February 9, 2019, 7:38pm UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464 "2019-02-09T19:38:36Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![sheepdisease](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/d07c76/32.png) [@sheepdisease](https://community.mp3tag.de/u/sheepdisease)
#### Post date: [February 9, 2019, 7:38pm UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/1 "2019-02-09T19:38:36Z")

</div>

Hello there, I have files with poor data and they need fixing.

I am thinking that there must be a way using actions and it will involve guess values, but I am not sure how exactly to achieve what I want:

Firstly, as in this screenshot:

 ![image](https://community.mp3tag.de/uploads/default/original/2X/8/897e93211729c663ae6434a09e95f82118c622ca.png)

1. 
  - I need mp3tag to extract the title and artist from the title alone. Then this needs to be added to the appropriate fields title and artist. This will enable me to fix the filenames easily as well.

2. 
  - I need mp3tag to pick up any occurrences of ft., feat. or featuring., remove any square or rounded brackets, change to ft. regardless of which sort of feat. was used originally and add featuring data to the end of the title within the artist brackets. So the title should be 'Rockabye (Clean Bandit ft. Sean Paul & Anne-Marie) rather than the original 'Clean Bandit - Rockabye [feat. Sean Paul & Anne-Marie]'

---

<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: [February 9, 2019, 8:31pm UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/2 "2019-02-09T20:31:37Z")

</div>

> [@sheepdisease](#):
>
> I need mp3tag to extract the title and artist from the title alone

Use an action of the type "Guess value"  
Source: %title%  
Pattern: %artist% - %title%

> [@sheepdisease](#):
>
> need mp3tag to pick up any occurrences

I think you already got a fair number of hints how to get along with brackets and stuff:

> [@Remove words between round brackets + the brackets](https://community.mp3tag.de/t/remove-words-between-round-brackets-the-brackets/9481):
>
> Hi all, I've got some files with words between round brackets in tags and filename and I want to get rid of the stuff like: original: (We are) The Road Crew what I want: The Road Crew But this for multiple files at once where the words between brackets of course vary in length. How do i do this?

> [@Remove parenthetical "feat." from filename](https://community.mp3tag.de/t/remove-parenthetical-feat-from-filename/42498):
>
> How about adapting this to prevent it being applied when the filename / title contains '(feat. )' regardless of the number of characters within parenthesis? How would this be done?

and/or

> [@Artist Tag Contains Multiple Artists](https://community.mp3tag.de/t/artist-tag-contains-multiple-artists/42221):
>
> Hello there, I am trying to clean up my music library and have come across a problem. I am trying to clean up the artist tag so it only contains the primary artist. It would be good if any other artists tagged could be removed from any tags and instead the filename be amended to include the other artists in the following format: File Number File Name (feat. second artist, third artist etc) feat would be additional text\* Could someone please help me with this?

and if this is not enough, try the search word "move feat" in this forum.

---

<div class="post-metadata">

### Author: ![sheepdisease](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/d07c76/32.png) [@sheepdisease](https://community.mp3tag.de/u/sheepdisease)
#### Post date: [February 10, 2019, 5:53am UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/3 "2019-02-10T05:53:42Z")

</div>

Thank you for your comprehensive reply. I have semi got this working.

What it does at the moment is correct the artist by extracting from the filename, put this into the artist and albumartist fields, change square brackets with round.

I want to create a %feat\_artist% tag so that this can be extracted and input into the filename.

Example of file to be changed:

 ![image](https://community.mp3tag.de/uploads/default/original/2X/8/8bc9e25abd5db614c2cceaca4cf16e4026fe9d5e.png)

I have tried to incorporate this into an action but it does not update the 'Feat Artist Check' column in mp3tag.

![image](https://community.mp3tag.de/uploads/default/original/2X/1/19b8f1b35a648bd7b10d2d63012a75768f678f97.png)

I don't know why this is.

At the moment, the end result of using this action is:

 ![image](https://community.mp3tag.de/uploads/default/original/2X/7/7ebab702c440c42f61df8f713ebc878776e2fcef.png)

5 Cold Water (feat. Justin Bieber & M0) (Major Lazer feat. ).mp3

Instead of finding (and changing to feat.) any instance of any variant of ft. in or outside of brackets and adding all that data after the artist name, it puts it in the wrong order:

It should be 5 Cold Water (Major Lazer feat. Justin Bieber & M0).mp3

---

<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: [February 10, 2019, 10:10am UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/4 "2019-02-10T10:10:26Z")

</div>

> [@sheepdisease](#):
>
> I don't know why this is.

I think the %track in that action is missing a % - it should be %track%

---

<div class="post-metadata">

### Author: ![sheepdisease](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/d07c76/32.png) [@sheepdisease](https://community.mp3tag.de/u/sheepdisease)
#### Post date: [February 10, 2019, 10:49am UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/5 "2019-02-10T10:49:10Z")

</div>

Thanks for your reply. There was a % missing but adding it didn't fix the problem. Still can't figure out how to fix it.

---

<div class="post-metadata">

### Author: ![Florian](https://community.mp3tag.de/user_avatar/community.mp3tag.de/florian/32/5759_2.png) [@Florian](https://community.mp3tag.de/u/Florian)
#### Post date: [February 10, 2019, 10:51am UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/6 "2019-02-10T10:51:22Z")

</div>

You also had the erroneous regular expressions in the list of actions (cf. actions 2 and 3).

If you enjoy building complex action groups, please ensure step by step that each action is performing the changes you envision.

---

<div class="post-metadata">

### Author: ![sheepdisease](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/d07c76/32.png) [@sheepdisease](https://community.mp3tag.de/u/sheepdisease)
#### Post date: [February 10, 2019, 10:57am UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/7 "2019-02-10T10:57:47Z")

</div>

Thanks for your reply Florian. Before integrating into this action group, I tested action 2 and 3 and they do work.

It's something later on that isn't working.

I also need to try and cover instances where there is no artist in the filename but one does feature in the artist field, like in the example below:

 ![image](https://community.mp3tag.de/uploads/default/original/2X/9/945d98ceaea549648863f22d3d68e6fbe3e399ec.png)

---

<div class="post-metadata">

### Author: ![Florian](https://community.mp3tag.de/user_avatar/community.mp3tag.de/florian/32/5759_2.png) [@Florian](https://community.mp3tag.de/u/Florian)
#### Post date: [February 10, 2019, 11:58am UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/8 "2019-02-10T11:58:41Z")

</div>

It's probably due to to a non-matching format string at "Guess values".

Look, `Cold Water (feat. Justin Bieber & M0)` doesn't include "`%track%`", " `feat.`", still has the featuring artist in parentheses and so on. So it really doesn't match your format string  
`%track% %title% feat. %feat_artist%`

From now on, **please refrain from posting complex action groups that are not working and ask what's wrong**. There are too many of your topics following this pattern already. It's not the purpose of this community and I find it disrespectful of people's time.

Instead, try to identify by yourself what's not working. Trace it down to the one action that doesn't produce what you're intending. If you don't understand why, you're welcome to ask about the detail and learn from that.

There is this quote, which I like in this context

> Give a man a fish and you feed him for a day; teach a man to fish and you feed him for a lifetime.

I hope you learn to fish, given the vast resources that are available and the helpful community.

---

<div class="post-metadata">

### Author: ![system](https://community.mp3tag.de/uploads/default/original/2X/c/ce7035d426cb755a7916793326d23b465222a407.png) [@system](https://community.mp3tag.de/u/system)
#### Post date: [February 9, 2026, 12:27pm UTC](https://community.mp3tag.de/t/extracting-title-and-artist-from-title-using-action-and-then-reorganise-the-display-order-in-the-title/44464/9 "2026-02-09T12:27:54Z")

</div>


