Regex in data-part - alternative wenn kein Match

Begonnen von klausw, 03 November 2016, 19:25:40

Vorheriges Thema - Nächstes Thema

klausw

Hallo zusammen

ich nutze data-type="label" um Werte folgender readings anzuzeigen


statBrennerHourLast an: 00:05:30 an_Count: 1 aus: 00:54:26 aus_Count: 2
statBrennerMonth an: 02:45:22 an_Count: 29 aus: 2d 15:14:38 aus_Count: 30


mit data-part=".*an:\s(.*)\san_Count.*" bekomme ich die "an" Dauer zurückgeliefert

wenn nun aber in dem entsprechenden Zeitraum nicht eingeschaltet war wird mit meinem regex natürlich auch nix zurückgeliefert.

statPumpe_BoilerDay aus: 18:00:00 aus_Count: 1
statPumpe_BoilerDayLast aus: 23:59:57 aus_Count: 1


Ich habe mich schon mit einem If Clause versucht, das wenigstens ein "aus" oder so dort steht leider ohne Erfolg:
(?(?=.*an:\s(.*)\san_Count.*).*an:\s(.*)\san_Count.*|.*(aus).*)

Gibt es eine Möglichkeit, bei nicht matchen der Regex z.B. einen "-" zu liefern?
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

setstate

Du kannst mit data-substitution arbeiten.

data-substitution="s/^$/-/g"

Wenn zwischen Anfang ^ und Ende $ kein Zeichen kommt, dann gib ein - aus.

klausw

RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280