Deutschsprachiges LilyPond-Forum

Allgemeine Fragen und Probleme => Fragen und Probleme aller Art => Thema gestartet von: Hilflos-im-Code am Freitag, 2. Oktober 2020, 11:37

Titel: Tonnamen reguläre Ausdrücke
Beitrag von: Hilflos-im-Code am Freitag, 2. Oktober 2020, 11:37
Ich weiß zwar, was reguläre Ausdrücke sind, aber für mich dürfte das wegen mangelnder Routine zu einer ziemlichen Denksportaufgabe werden.

Ich schreibe meine Tonnamen in absoluter Tonhöhe und in der Sprache Deutsch. Was muss ich für einen regulären Ausdruck verwenden, um alle möglichen Tonnamen zu erwischen. Vielleicht hat das jemand für sich gelöst.
Titel: re: Tonnamen reguläre Ausdrücke
Beitrag von: ingmar am Sonntag, 4. Oktober 2020, 06:59
Willst du nur Tonnamen isolieren oder Noten? Denn zu diesen gehört ja mehr.

Die zwölf möglichen Tonhöhen kannst du einfach aufzählen, durch die Pipe (|) getrennt.

Aber dahinter können entweder beliebig viele Kommas oder beliebig viele Hochkommas folgen, oder nichts. Dann können Ziffern kommen (bei mir auch \breve), oder nicht, dann Punkte oder nicht, schließlich ( oder [ oder nicht, oder gewisse Dinge wie \fermata. Für die Musik, die ich selbst so schreibe, würde das wahrscheinlich schon reichen. Fragt sich, wie komplex deine Musik ist.

Denk dran, dass einige Zeichen eine Metabedeutung haben (wie d oder die Klammern), daher durch \ eingeleitet werden müssen.

Vor der Note muss ein Zeilenbeginn oder ein Leerzeichen stehen, dahinter ein Leerzeichen oder Zeilenende; diese gehören aber nicht zur Tonhöhe.

Denkst du, das reicht? Das kriegst du doch hin, oder? : - )

EDIT: Zwei Ergänzungen
Titel: Antw:Tonnamen reguläre Ausdrücke
Beitrag von: Rudi Guggt am Sonntag, 4. Oktober 2020, 11:05
Hallo,

ZitatVor der Note muss ein Zeilenbeginn oder ein Leerzeichen stehen, dahinter ein Leerzeichen oder Zeilenende;

Das sehe ich anders. Unter bestimmten Bedingungen kann das Leerzeichen entfallen, vor der Note kann auch eine Klammer stehen, auch kann der Notenname komplett fehlen und nur die Dauer notiert sein.

Was genau will Hilflos im Code eigentlich erreichen?

mfg
Rudi
Titel: Antw:Tonnamen reguläre Ausdrücke
Beitrag von: Hilflos-im-Code am Mittwoch, 7. Oktober 2020, 12:34
Das Problem hat sich für mich erledigt. Letztendlich geht es darum diverse Sachen nach einem MusicXML-Import aufzuräumen. Momentan funktioniert für mich ganz gut.

[a-h][ies]{0,1}{0,1}[,']{0,10}[124836]?[624.]?[8.]?