# Sentence case conversion issue

**URL:** https://community.mp3tag.de/t/sentence-case-conversion-issue/71559
**Category:** Support
**Created:** [July 3, 2026, 8:35am UTC](https://community.mp3tag.de/t/sentence-case-conversion-issue/71559 "2026-07-03T08:35:47Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![bollemanneke](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/b/74df32/32.png) [@bollemanneke](https://community.mp3tag.de/u/bollemanneke)
#### Post date: [July 3, 2026, 8:35am UTC](https://community.mp3tag.de/t/sentence-case-conversion-issue/71559/1 "2026-07-03T08:35:47Z")

</div>

Could anyone help? I'm trying to convert the title field in sentence case, but want to create exceptions for things like . ( and -. So the title needs to look like: Introduction. Allegro non troppo. Or: Variation 23 (Andante con moto).

Any ideas?

---

<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: [July 3, 2026, 10:30am UTC](https://community.mp3tag.de/t/sentence-case-conversion-issue/71559/2 "2026-07-03T10:30:08Z")

</div>

Please show us a real current TITLE content and the exact result you want to achieve.  
We need to see the differences that you want to convert.

Do you mean for TITLE:  
The first character always in uppercase, everything else in lowercase.  
Exceptions: After a dot `.` or opening parenthesis `(` or a hyphen `-` should the next character (or the second if it is a space?) be in uppercase too?

---

<div class="post-metadata">

### Author: ![bollemanneke](https://community.mp3tag.de/letter_avatar_proxy/v4/letter/b/74df32/32.png) [@bollemanneke](https://community.mp3tag.de/u/bollemanneke)
#### Post date: [July 3, 2026, 10:47am UTC](https://community.mp3tag.de/t/sentence-case-conversion-issue/71559/3 "2026-07-03T10:47:29Z")

</div>

I can't show examples and I don't really need to. If my current title is All Like This, I want an action that makes a title field look like: Allegro vivace - Andante. Quasi allegretto. So basiclaly sentence case which is reset after . - (

---

<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 3, 2026, 10:58am UTC](https://community.mp3tag.de/t/sentence-case-conversion-issue/71559/4 "2026-07-03T10:58:19Z")

</div>

The problem is the usually following space. So the real pattern would "dot space", "minus space" - and just the plain parenthesis.

Here is an example to get an upper case following the dot and the colon:  
`$regexp($caps3('Allegro non troppo. Or: Variation 23 (Andante con moto)',),'(\.|:) (\w+)',$1 \u$2)`

Which leads to:  
`Allegro non troppo. Or: Variation 23 (andante con moto)`

---

<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: [July 3, 2026, 12:47pm UTC](https://community.mp3tag.de/t/sentence-case-conversion-issue/71559/5 "2026-07-03T12:47:35Z")

</div>

If the OP wants the first character after an opening parenthesis also to be in uppercase, they could use something like this:

`$regexp($regexp($lower(%title%),'(^|\. |\(|: )([a-z])','$1\u$2'),'\bkv\.','KV.')`

This would convert the example  
`ALLEgro Non Troppo. or Variation 23 (andante CoN MoTo: alLEgro, kV. beta)`  
into  
`Allegro non troppo. Or variation 23 (Andante con moto: Allegro, KV. Beta)`

 ![image](https://community.mp3tag.de/uploads/default/original/3X/b/f/bf62940deab57d1296da1a076a842bbcbba2aa7d.png)

**The two regular expressions are needed for the following reason:**  
First, the entire TITLE content is converted to lowercase.  
Then any lowercase letter `\[a–z\]` that appears at the beginning of the string, or directly after `.` or `(` or `: ` is capitalized using `\u`  
Finally, the isolated word `kv.` (matched via `\bkv\.`) is replaced with `KV.`

Note:  
It would be too complicated also to include other collection abbreviations like `Op.` or `BWV` (Bach) or `Hob.` (Haydn) or `WoO` (Beethoven) and many more.

---

<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: [July 10, 2026, 12:47pm UTC](https://community.mp3tag.de/t/sentence-case-conversion-issue/71559/6 "2026-07-10T12:47:53Z")

</div>

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