# Remove all characters in a string until a substring is matched

**URL:** https://community.mp3tag.de/t/remove-all-characters-in-a-string-until-a-substring-is-matched/17265
**Category:** General Discussion
**Created:** [September 28, 2015, 10:53am UTC](https://community.mp3tag.de/t/remove-all-characters-in-a-string-until-a-substring-is-matched/17265 "2015-09-28T10:53:23Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![raynor](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/r/6de8d8/32.png) [@raynor](https://community.mp3tag.de/u/raynor)
#### Post date: [September 28, 2015, 10:53am UTC](https://community.mp3tag.de/t/remove-all-characters-in-a-string-until-a-substring-is-matched/17265/1 "2015-09-28T10:53:23Z")

</div>

Hello all,

How do I remove all characters in a string (filename) until a substring is matched.

Let's say:

Filename = "abc123 MP3Tag Filename"  
Filename = "abcdef123 MP3Tag Filename"  
Filename = "abcdefxxx123 MP3Tag Filename"

substring = "123"

Filename will become "MP3Tag Filename"

Thanks for your help.

---

<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: [September 28, 2015, 10:56am UTC](https://community.mp3tag.de/t/remove-all-characters-in-a-string-until-a-substring-is-matched/17265/2 "2015-09-28T10:56:22Z")

</div>

Create an action of the type "Guess values" for \_FILENAME  
Guessing pattern: %dummy%123 %\_filename%

Or use the Convert\>Filename-Filename function:  
Source: %1123 %2  
Target: %2

---

<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: [September 28, 2015, 3:52pm UTC](https://community.mp3tag.de/t/remove-all-characters-in-a-string-until-a-substring-is-matched/17265/3 "2015-09-28T15:52:56Z")

</div>

> [@raynor](#):
>
> Hello all, How do I remove all characters in a string (filename) until a substring is matched. ...

Additional to the working proposals from user 'ohrenkino' in post #2.

Remove all characters from the left side of the filename string ...  
until and including the last character of the search substring.

**From: 'abcdefxxx123 MP3Tag Filename' 'abcdef123 MP3Tag Filename' 'abc123 MP3Tag Filename' To: 'MP3Tag Filename' Action "Format value" Field ......: \_FILENAME Formatstring: $cutLeft(%\_filename%,$add($sub($len('123 '),1),$strstr(%\_filename%,'123 '))) ... or ... Formatstring: $cutLeft(%\_filename%,$add(-1,$len('123 '),$strstr(%\_filename%,'123 '))) ... or ... Formatstring: $mid(%\_filename%,$add($strrchr(%\_filename%,'123 '),$len('123 ')),$len(%\_filename%)) ... or ... Formatstring: $reverse($left($reverse(%\_filename%),$sub($strstr($reverse(%\_filename%),$reverse('123 ')),1))) ... or ... Formatstring: $regexp(%\_filename%,'^.\*123 (.\*)$','$1') ... or ... Formatstring: $regexp(%\_filename%,'^.\*123 ',)**

DD.20150928.1952.CEST, DD.20150929.0710.CEST

---

<div class="post-metadata">

### Author: ![raynor](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/r/6de8d8/32.png) [@raynor](https://community.mp3tag.de/u/raynor)
#### Post date: [September 28, 2015, 10:52pm UTC](https://community.mp3tag.de/t/remove-all-characters-in-a-string-until-a-substring-is-matched/17265/4 "2015-09-28T22:52:45Z")

</div>

> [@ohrenkino](#):
>
> Create an action of the type "Guess values" for \_FILENAME  
> Guessing pattern: %dummy%123 %\_filename%
> 
> Or use the Convert\>Filename-Filename function:  
> Source: %1123 %2  
> Target: %2

I've tried with Convert\>Filename-Filename function, it works well.  
Thanks for your help.

---

<div class="post-metadata">

### Author: ![raynor](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/r/6de8d8/32.png) [@raynor](https://community.mp3tag.de/u/raynor)
#### Post date: [September 28, 2015, 10:59pm UTC](https://community.mp3tag.de/t/remove-all-characters-in-a-string-until-a-substring-is-matched/17265/5 "2015-09-28T22:59:35Z")

</div>

> [@DetlevD](#):
>
> Additional to the working proposals from user 'ohrenkino' in post #2.
> 
> Remove all characters from the left side of the filename string ...  
> until and including the last character of the search substring.
> 
> **From: 'abcdefxxx123 MP3Tag Filename' 'abcdef123 MP3Tag Filename' 'abc123 MP3Tag Filename' To: 'MP3Tag Filename' Action "Format value" Field ......: \_FILENAME Formatstring: $cutLeft(%\_filename%,$add($sub($len('123 '),1),$strstr(%\_filename%,'123 '))) ... or ... Formatstring: $mid(%\_filename%,$add($strrchr(%\_filename%,'123 '),$len('123 ')),$len(%\_filename%)) ... or ... Formatstring: $reverse($left($reverse(%\_filename%),$sub($strstr($reverse(%\_filename%),$reverse('123 ')),1))) ... or ... Formatstring: $regexp(%\_filename%,'^.\*123 (.\*)$','$1') ... or ... Formatstring: $regexp(%\_filename%,'^.\*123 ',)**
> 
> DD.20150928.1952.CEST

I've used $cutLeft(%\_filename%,$add($sub($len('123 '),1),$strstr(%\_filename%,'123 ')))  
It works wonder for me.  
Thank you VERY VERY MUCH for your quick help.

Cheers
