def Befehl filtern

Begonnen von Sailor, 31 Januar 2020, 10:50:03

Vorheriges Thema - Nächstes Thema

Sailor

Ein herzerfrischendes "Moin" vom hintern Deich vorweg!

Ich habe mal wieder eine Denkblockade und hoffe Ihr könnt mir diese aushebeln.

Der Befehl
{join("\n", grep {$defs{$_}} keys %defs)}
liefert mir ganz brav alle Namen der definierten devices.

Wie kann ich diesen Befehl erweitern, so dass nur alle Namen beginnend mit ".*_SmokeDetector" ausgegeben werden_

Danke für die Hilfe...

Gruss
    Sailor
******************************
Man wird immer besser...

rudolfkoenig

{join("\n", grep /^.*_SmokeDetector/, keys %defs)}
Oder:
{join("\n", devspec2array(".*_SmokeDetector.*"))}
Achtung: Letzteres liefert bei leeren Menge ".*_SmokeDetector.*" zurueck.

Sailor

Hallo Rudi

Zitat von: rudolfkoenig am 31 Januar 2020, 11:24:40
{join("\n", devspec2array(".*_SmokeDetector.*"))}
Achtung: Letzteres liefert bei leeren Menge ".*_SmokeDetector.*" zurueck.

devspec2array... Das war es, was mir nicht einfiel!
Danke!

Soll ich mal das Wiki für "list" entsprechend updaten?

Gruss
    Sailor

******************************
Man wird immer besser...

rudolfkoenig

Wenn Du meinst, dass es da sinnvoll ist, dann ja.
Ich versuche mich in wiki Angelegenheiten nicht einzumischen.