# Featuring From Title to artist

**URL:** https://community.mp3tag.de/t/featuring-from-title-to-artist/65214
**Category:** Support
**Created:** [July 6, 2024, 2:39am UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214 "2024-07-06T02:39:11Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![SirocKO](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/f05b48/32.png) [@SirocKO](https://community.mp3tag.de/u/SirocKO)
#### Post date: [July 6, 2024, 2:39am UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/1 "2024-07-06T02:39:11Z")

</div>

Hi anyone listening

I have had this problem for ages and all the answers I could find not many of them are not exactly what I'm looking for and I don't know how to alter them to suit me.

**was-**  
**Title: Make it so (Ft Janey)**  
**Artist: Johnny**

**want it to be-**  
**Title: Make it so**  
**Artist: Johnny Ft Janey**

Tried chat GPT but it doesn't work at all. Tried XYZ answers for other people but when I change the script for "Ft" doesn't work.  
I could write a scrip in english but it doesn't work that way.  
Here it is for humans to read:

10 Look in Title field  
20 If you see something starting with (Ft copy all of that to the end  
30 Put a space after the Artist if there isn't one  
40 Paste what was copied from the Title  
50 Delete all ( + ) from Artist field  
60 Look in Title field  
70 If you see something starting with (Ft delete all of that to the end  
80 End

Just the how is greatly appreciated, however any answers would appreciate explanation of everything and how it works so I can write my own if I need to do something else or (Ft might be Ft or feat etc

Cheers

---

<div class="post-metadata">

### Author: ![MotleyG](https://community.mp3tag.de/user_avatar/community.mp3tag.de/motleyg/32/440_2.png) [@MotleyG](https://community.mp3tag.de/u/MotleyG)
#### Post date: [July 6, 2024, 2:57am UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/2 "2024-07-06T02:57:43Z")

</div>

There have been plenty of discussions about this exact request here before. See here for example.

> [@How to move (feat.) from title to artist - HELP](https://community.mp3tag.de/t/how-to-move-feat-from-title-to-artist-help/11512):
>
> 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

You can modify the suggestions to fit the exact need for your case.

---

<div class="post-metadata">

### Author: ![SirocKO](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/f05b48/32.png) [@SirocKO](https://community.mp3tag.de/u/SirocKO)
#### Post date: [July 6, 2024, 3:41am UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/3 "2024-07-06T03:41:28Z")

</div>

I changed  
%artist% & $mid(%title%,$add($strstr(%title%,' **Feat.**'),6),$len(%title%))  
To this  
%artist% & $mid(%title%,$add($strstr(%title%,'**(Ft**'),6),$len(%title%))  
It does not work

**was-**  
**Title: Make it so (Ft Janey)**  
**Artist: Johnny**

**become-**  
**Title: Make it so**  
**Artist: Johnny & aney)**

The Artist turned into a jumbled mess and the ) is still at the end

Please tell me how to change that string to suit my situation  
Cheers

---

<div class="post-metadata">

### Author: ![anon32189785](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/a/45deac/32.png) [@anon32189785](https://community.mp3tag.de/u/anon32189785)
#### Post date: [July 6, 2024, 5:35am UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/4 "2024-07-06T05:35:20Z")

</div>

I don't know, if this helps, you still have to figure out the pertinent Mp3tag function,  
-\> $regexp(x,e,r,c) ([Scripting Functions – Mp3tag Documentation](https://docs.mp3tag.de/scripting/)) I do my regex in Sublime Text 4, so _I have little experience with this function_. Someone else might have to chip in...

* * *

## $regexp(x,e,r,c)

x = The title of your track  
e = the RegEx (" ((.\*))"), observe the **blank space** at the beginning  
r = %artist% $1  
c = disables the ignore case setting (0) \<-optional

(I do not know if you need quotes around the arguments???)

So your expression **might** look something like this:

$regexp(%title," ((.\*))"," · %artist% $1")

The output will now be (and is in ST4):

"Make it so · Johnny Ft Janey".

This piece " · ", the " **middle dot**" I use as a delimiter, you can use another one. If you don't know how to get the middle dot, copy it -\> " · " \<-

As I said, _I have a different workflow_ and use code editors for the heavy lifting. Here's what I suggest in your case:

- write the output in an **unused, empty** field (comments?)
- then parse (split) it into

--1) all in front of the "middle dot" -\> %title%  
--2) all after the "middle dot" -\> %artist%  
-3) don't forget to trim leading and trailing spaces

and write the results into the corresponding Mp3tag-fields. There is a function to split this in Mp3tag; you need to look it up. If you need more help, please come back 🙂

---

<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: [July 6, 2024, 5:52am UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/5 "2024-07-06T05:52:41Z")

</div>

Try an action of the type "Guess value"  
Source string: `%artist% $regexp(%title%,(.*) \(Ft (.*)\),Ft $2==$1)`  
Target format string: `%artist%==%title%`

---

<div class="post-metadata">

### Author: ![SirocKO](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/f05b48/32.png) [@SirocKO](https://community.mp3tag.de/u/SirocKO)
#### Post date: [July 31, 2024, 5:22pm UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/6 "2024-07-31T17:22:37Z")

</div>

Hi,  
Thanks it works, however can you tell me how it works so I can use it to make other scripts.  
Both for in general but also I have encountered other problems which popped up.  
It seems like the file name \> filename thing where you'd go %1 %2 - %3 and then just use %1 whatever sepperator you want here %3.  
Thanks again

---

<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: [July 31, 2024, 5:58pm UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/7 "2024-07-31T17:58:40Z")

</div>

> [@SirocKO](#):
>
> It seems like the file name \> filename thing where you'd go %1 %2 - %3 and then just use %1 whatever sepperator you want here %3.

The basic approach is the same: you define a pattern.  
In Guess value you first create a string and to do so, it is possible to also use scripting functions.  
The scripting function that also allows to define patterns and then swap parts around or treat them specially, is the regular expression.  
My idea was: if you want to get the last part of the TITLE to become the trailing part of the ARTIST, then  
put ARTIST first  
swap TITLE around  
insert a unique separator between the parts of TITLE (for which I use == but anything unique will do)  
which leads to a string ARTIST Ft TITLE2==TITLE1  
and now split that string by using a matching format string in the shape of  
%artist%==%title%

---

<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: [August 30, 2024, 5:58pm UTC](https://community.mp3tag.de/t/featuring-from-title-to-artist/65214/8 "2024-08-30T17:58:43Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
