Hauptmenü

Regex- Hilfe

Begonnen von Dia81, 28 Januar 2021, 17:30:37

Vorheriges Thema - Nächstes Thema

Dia81

Ich steig nach 10 Tutorials nicht durch. Habe ein Reading aus Occtoprint das gibt Dinge aus Wie : Online, Prozessing etc. Das will ich per Label auslesen. Aber wenn der Drucker offline ist, heisst das Reading: Offline (Error: ....sehr langer text). Ich müsste also immer nur das erste Wort des Readings anzeigen lassen. Also hier NUR Offline. Ich krieg es mit data-part nicht geregelt :(

Ziel: Immer das erste Wort (Regelfall nur 1 außer bei Offline)  anzeigen lassen in unterschiedlichen Längen. Meine Versuche sind alle kläglich gescheitert

lupoo

#1
Wie wäre es mit einem userReadings eintrag? Sowas z.B.

shortState {my ($firstWord) = split /\ /, ReadingsVal($NAME, "reading", undef); return $firstWord;},


EDIT:
Falls es das gleiche Problem mit einem anderen Reading gibt, welches an das erste Wort ein Satzzeichen o.ä. angestellt hat, funktioniert es folgendermaßen:

shortState {my ($firstWord) = split /\ /, ReadingsVal($NAME, "reading", undef); $firstWord =~ tr/a-zA-ZÄÖÜäöüß0-9//cd; return $firstWord;},

Dia81

klappt super, danke dir