# Removing Verse, Chorus, Refrain etc

**URL:** https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888
**Category:** Support
**Created:** [September 11, 2024, 10:17am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888 "2024-09-11T10:17:12Z")
**Posts on this page:** 16
**Page:** 1

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 11, 2024, 10:17am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/1 "2024-09-11T10:17:12Z")

</div>

Hi there,

I have batch-searched with foobar 2000 and found lots of the lyrics of my songs and automatically saved them to the mp3 tag.

But lots of them have [Verse] [Refrain] [Chorus] etc. in the lyrics. I don't want that.

Is there an easy way to remove this from the lyrics in one batch with Mp3Tag ? Or do I manually have to alter the lyrics in the mp3 tags ....or just accept that it's there.

Thanks for your help

Regards, Saskia

---

<div class="post-metadata">

### Author: ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)
#### Post date: [September 11, 2024, 10:24am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/2 "2024-09-11T10:24:10Z")

</div>

You can search & replace in your [UNSYNCEDLYRICS](https://docs.mp3tag.de/mapping/#unsyncedlyrics) tag for this unwanted words and replace them with nothing = remove/delete them.

Have a look here:

> **[Replace – Mp3tag Documentation](https://docs.mp3tag.de/actions/replace/)**
>
> Documentation on the Replace action type that can be performed as Quick Action or as reusable workflow from Action Groups. Mp3tag is the universal Tag Editor.

---

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 11, 2024, 10:31am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/3 "2024-09-11T10:31:51Z")

</div>

I cannot find search & replace ???

---

<div class="post-metadata">

### Author: ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)
#### Post date: [September 11, 2024, 10:33am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/4 "2024-09-11T10:33:15Z")

</div>

Mp3tag -\> Menu -\> Actions -\> Actions (Quick) -\> Select Action Type "Replace"

![image](https://community.mp3tag.de/uploads/default/original/3X/9/1/91ecb2e9d3a2d25d43aa4f6509d18b52956c008c.png)

The Action itself is called "Replace" and searches for the "Original" value and replaces it with the given value in "Replace with" or nothing.

If you need such Actions not only once, you can also add it as [reusable Actions](https://docs.mp3tag.de/actions/).

---

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 11, 2024, 10:42am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/5 "2024-09-11T10:42:41Z")

</div>

ah yes, thanks

I was looking for 'search & replace' not just 'replace'

Any change of this going wrong if I were to select all 19.000 files at once ?  
I would not want to mess up my database

---

<div class="post-metadata">

### Author: ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)
#### Post date: [September 11, 2024, 10:46am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/6 "2024-09-11T10:46:31Z")

</div>

> [@SaskiaS](#):
>
> Any change of this going wrong if I were to select all 19.000 files at once ?  
> I would not want to mess up my database

As always I recommend to first backup your collection.  
You can never know what happens with your collection and your data.

Then I would filter F3 the songs first to list only the songs from your 19000 files where UNSYNCEDLYRICS contains the no more wanted word, with something like:  
`UNSYNCEDLYRICS HAS "[Chorus]"`

Apply the Replace-Action to the filtered list of files only.

Do this on some manually selected test files and have a look if you really remove only the parts you don't want anymore.

---

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 11, 2024, 11:01am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/7 "2024-09-11T11:01:20Z")

</div>

ok, what I notice is that it leaves an extra empty line  
Does that have something to do with my settings? Can it be prevented ?

---

<div class="post-metadata">

### Author: ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)
#### Post date: [September 11, 2024, 11:04am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/8 "2024-09-11T11:04:09Z")

</div>

> [@SaskiaS](#):
>
> Can it be prevented ?

Yes, you would have to search for the text and the used sign for the "extra empty line" in your lyrics. This could be a carriage return (CR) `\r` hex `0a` or a line feed (LF) `\n` hex `0d` or a combination.

Example Text:

```auto
eng||Test
This is the way
This is the way [Refrain]
[Chorus]
oder so

```

 ![image](https://community.mp3tag.de/uploads/default/original/3X/9/e/9e51f5f4c3cd27010d30bfa53fc5acac84eab9e1.png)

The `[Chorus]` text has a trailing CR and LF

---

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 11, 2024, 11:12am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/9 "2024-09-11T11:12:59Z")

</div>

No this is getting to complicated for me.  
I will leave the extra empty lines as they are

But thanks for your answer

---

<div class="post-metadata">

### Author: ![poster](https://community.mp3tag.de/user_avatar/community.mp3tag.de/poster/32/4881_2.png) [@poster](https://community.mp3tag.de/u/poster)
#### Post date: [September 12, 2024, 5:18am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/10 "2024-09-12T05:18:10Z")

</div>

> [@SaskiaS](#):
>
> No this is getting to complicated for me.

Filter for to show only files with 3 consecutive CR\LFs with this expression:  
`%unsyncedlyrics% MATCHES (\r\n){3}`

Then try an action of the type "Replace with regular expression":  
Field: UNSYNCEDLYRICS  
Regular expression: `(\r\n){3}`  
Replace matches with: `\r\n\r\n`

3 consecutive CR\LFs get replaced by 2 CR\LFs.

---

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 12, 2024, 10:02am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/11 "2024-09-12T10:02:43Z")

</div>

Thank you, that worked

---

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 12, 2024, 10:07am UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/12 "2024-09-12T10:07:34Z")

</div>

Now I see I'm still left with the Verse, Chorus, Refrain etc. that is followed by a name, e.g.

[Chorus: Horace Andy]  
[Verse: Horace Andy]  
[Refrain : Idir & Mila]

Is there a way to remove everything between the brackets ?  
so if i select:  
%unsyncedlyrics% HAS "[Chorus:"

it will remove everything between the two brackets no matter what stands after [Chorus:

---

<div class="post-metadata">

### Author: ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)
#### Post date: [September 12, 2024, 12:30pm UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/14 "2024-09-12T12:30:04Z")

</div>

In theory, you could use an Action from type "[Replace with regular expression](https://docs.mp3tag.de/actions/replace-regexp/)" and use a  
Format string like this:  
`(\[[Chorus|Refrain|Verse].+?\])`  
 ![image](https://community.mp3tag.de/uploads/default/original/3X/2/f/2f830f6a2ae3f0d2b275c0e57c8b618134629433.png)

This would - in theory - remove all occurences of [Chorus...] and [Refrain....] and [Verse...] without looking if there is a space and a colon `:` or directly a colon `:` after the search word starting with an opening square bracket. It just removes everything until a closing square bracket.

**BUT please be aware:**  
As you know, in Lyrics there can be whatever text and combination of characters you can imagine. If there is a single open square bracket buzzing around or the closing bracket is missing, the above regular expression doesn't work anymore.

You must carefully check whether the result meets your expectations.  
Before you use such a regular expression, please backup your collection.  
I can NOT guarantee, if this always will bring the 100% correct result for your lyrics in your files.

---

<div class="post-metadata">

### Author: ![SaskiaS](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/s/dbc845/32.png) [@SaskiaS](https://community.mp3tag.de/u/SaskiaS)
#### Post date: [September 12, 2024, 12:49pm UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/15 "2024-09-12T12:49:58Z")

</div>

Hmm, ok I'll think about it.  
Maybe manually is in this case best

---

<div class="post-metadata">

### Author: ![LyricsLover](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@LyricsLover](https://community.mp3tag.de/u/LyricsLover)
#### Post date: [September 12, 2024, 1:05pm UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/16 "2024-09-12T13:05:00Z")

</div>

Maybe this slightly adapted regular expression could even better match:  
`(\[(Chorus|Refrain|Verse).*?\])`

This means:  
 ![image](https://community.mp3tag.de/uploads/default/original/3X/f/1/f1f95d15da778ad6b49a7b29fc39aee71b595ddd.png)

But again: The content in UNSYNCEDLYRICS is completely unstructured.  
There is a high risk that a search term will be overlooked or that too much text will be deleted

---

<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: [October 12, 2024, 1:05pm UTC](https://community.mp3tag.de/t/removing-verse-chorus-refrain-etc/65888/17 "2024-10-12T13:05:01Z")

</div>

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