Großschreibung nach Hochkomma mit caps2?


#1

Hallo zusammen,

die Schreibweise stelle ich mit folgendem Code über "TAG-Felder formatieren" ein:

$caps2(%title%,'('')''{''}''['']'-_.-/":;,)

kleine Korrektur, sonst wurde nach einem Leerzeichen nicht gross geschrieben. (Leerzeichen nach dem ersten Komma gesetzt.)

$caps2(%title%, '{''}''['']''('')'-_./":;,)

Das funktioniert auch wunderbar. Jetzt möchte ich aber nach einem Hochkomma "'" auch groß schreiben. Um es noch komplizierter zu machen: aus "don't" soll "Don't" werden, aber aus "titties 'n' beer" soll "Titties 'N' Beer" werden.

Also nur nach Leerstelle Hochkomma " '" bzw. Punk Hochkomma ".'" usw. soll groß geschrieben werden aber nicht nach einem Buchstaben.

Kann mir da bitte jemand helfen? Ich hab schon stundenlang gesucht und selber probiert.

Danke im Voraus.

Gruß Forrest :book:


[X] Caps2, Kommas und Klammern
#2

Man kann eine zweite Aktion anlegen:

Aktionstyp: Ersetzen mit regulären Ausdrücken
Feld: TITLE
Regulärer Ausdruck: ([ .]'\l)
Treffer ersetzen durch: $upper($1)

[x] Groß-/Kleinschreibung berücksichtigen

RegExp Help
#3

Hallo dano, :smiley:

danke für die Antwort, hat wunderbar geklappt in Verbindung mit meinem Code, kann man entweder drunter oder drüber setzen. Ich hab's allerdings nicht verstanden. Könntest du mir noch kurz erklären, wofür diese Zeichenfolge steht ([ .]'\l)? Kann ich da im Bedarfsfall noch irgendetwas modifizieren?

Gruß Forrest


#4

[ .] Leerzeichen oder Punkt
' Hochkomma
\l beliebiger Kleinbuchstabe
() markiert alles als Gruppe, die mit $1 aufgerufen werden kann


#5

OK, ich danke dir, ich hatte mich auch zusätzlich noch bei Wikipedia in RegEx eingelesen.

Gruß Forrest :smiley:


#6

Fantastisch! Das konnte ich eben auch für meine klassischen Stücke einbauen, die immer mal wieder Texte in einfache Hochkommas setzen wie:
Polonaise In A, Op.40 No.3, 'Military'

Dank Deiner RegEx kriege ich den ersten Buchstaben nach ' endlich immer gross hin!

Jetzt muss ich nur noch was finden für den Abstände nach "Op." und "No." :wink:


#7

Hallo liebe Leute,

mir sind noch ein paar Besonderheiten mit caps2 aufgefallen:

Ich habe eine Aktion erstellt, die mir alle Felder mit caps2 formatieren soll. Da "TAG-Felder formatieren" nur jeweils ein Feld bearbeiten kann (nicht _ALL), habe ich das mit einer RegEx suchen+ersetzen Lösung gemacht:

Suche in ALL
nach (.+)
ersetze durch $caps2($1, '{''}''['']''('')'-
./":;,)

Das geht sehr gut, allerdings gibt es Fehler, wenn der gefundene String entweder ein Komma (oder Kommas) enthält, oder eine öffnende Klammer ohne eine schließende.
Dateien wie "Test, TEsT.mp3" werden nach dem Komma abgeschnitten, bei mehreren Kommas gibt es wilde schwer zu erklärende Resultate
"TesT (tes.mp3" führt zu einem SYNTAXERROR. Vielleicht gibt es ähnliche Probleme mit anderen Sonderzeichen.

Mein Workaround ist jetzt der, dass ich einfach alle wichtigen Felder nacheinander per "Tag-Felder formatieren" bearbeiten lasse, denn da scheinen solche unvollständigen Klammern oder Kommas kein Problem zu sein.

Kann man das aber auch anders lösen?
Vielleicht sollte das auch ins Bugreport-Forum?

Danke für ein tolles Programm und tollen Support!