2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-01-31 18:59:33 +00:00

98_DOIF.pm: fixed: colon in regex

git-svn-id: https://svn.fhem.de/fhem/trunk@10720 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
damian-s 2016-02-03 20:55:14 +00:00
parent 47765bca21
commit 7112c2b3e5

View File

@ -251,7 +251,15 @@ sub ReplaceReadingDoIf($)
my $tailBlock;
my $err;
my $regExp="";
my ($name,$reading,$format)=split(":",$element);
my $name;
my $reading;
my $format="";
if ($element =~ /([^\:]*):(".*")/) {
$name=$1;
$reading=$2;
} else {
($name,$reading,$format)=split(":",$element);
}
my $internal="";
my $notifyExp="";
if ($name) {
@ -1821,9 +1829,12 @@ Weitere Möglichkeiten bei der Nutzung des Perl-Operators: <code>=~</code>, insb
<a name="DOIF_Ereignissteuerung_ueber_Auswertung_von_Events"></a>
<b>Ereignissteuerung über Auswertung von Events</b>&nbsp;&nbsp;&nbsp;<a href="#DOIF_Inhaltsuebersicht">back</a><br>
<br>
Eine Alternative zur Auswertung von Stati oder Readings ist das Auswerten von Ereignissen (Events) mit Hilfe von regulären Ausdrücken, wie beim notify. Eingeleitet wird die Angabe eines regulären Ausdrucks durch ein Fragezeichen.
Eine Alternative zur Auswertung von Stati oder Readings ist das Auswerten von Ereignissen (Events) mit Hilfe von regulären Ausdrücken, wie beim notify.<br>
<br>
Die Syntax lautet: <code>[&lt;devicename&gt;:"&lt;regex&gt;"]</code><br>
<br>
Der reguläre Ausdruck, der das Suchmuster innerhalb einer Ereigniszeile definiert, wird in Anführungszeichen angegeben.<br>
<br>
<u>Anwendungsbeispiel</u>: wie oben, jedoch wird hier nur das Ereignis (welches im Eventmonitor erscheint) ausgewertet und nicht der Status von "remotecontrol" wie im vorherigen Beispiel<br>
<br>
<code>define di_garage DOIF ([remotecontrol:"on"]) (set garage on) DOELSEIF ([remotecontrol:"off"]) (set garage off)</code><br>