Eine Frage an die "Regex-Spezialisten".
Habe ein Regex-Kommando, das offensichtlich falsch ist.
Aber das Feld "Gesamte Apnoe/Hypopnoe(RDT) bleibt leer:
Kann mir jemand den Fehler aufzeigen? Vielen Dank...
Eine Frage an die "Regex-Spezialisten".
Habe ein Regex-Kommando, das offensichtlich falsch ist.
Aber das Feld "Gesamte Apnoe/Hypopnoe(RDT) bleibt leer:
Kann mir jemand den Fehler aufzeigen? Vielen Dank...
Um die Apopnoe/Hypopnoe zeit pro Stunde auszulesen müßte dieses Kommando helfen. Allerdings fehlt noch der Karteieintrag aus dem ausgelesen werden soll und dann das ganze noch in die Klammern setzen mit dem regex Kommando davor.
Apnoe \/ Hypopnoe Zeit pro Stunde\s+(\d{1,2}:\d{2})
Dieses kommando einfach einsetzen hinter regex und vor das x
Hallo Herr Koopmann,
so würde es funktionieren:
$[regex \(RDT\)\s+([\d]+:[\d]+) Polygraphie_Auswertung_GDT N _ _ 0-0d NN NNJJ NNNN _ K _]$
oder ähnlich Ihrer Variante:
$[regex \(RDT\)\s+([0-9]+:[0-9]+) x Polygraphie_Auswertung_GDT _ _ 0-0d NN NNJJ NNNN _ K _]$
In Ihrem Regex war der Fehler, dass die gesuchte Zahl "32" mit dem Ausdruck ([0-9]:+[0-9]+]) das + nach der ersten Gruppe und vor dem ":" nicht als "Nimm alle Zahlen von 0-9" interpretiert, sondern nur nach einer Zahl sucht. Das + muss also vor den : gesetzt werden, dann klappt es.
Das ist das Tückische am Regexen: ein kleiner Dreher verändert gleich alles.
Der Ausdruck (RDT) als "Anker" reicht aus, wenn der Begriff im ganzen GDT-Rückschrieb nirgendwo anders vorkommt.
Ich empfehle, www.regex101.com zu nutzen. Da kann man sich Zeichen für Zeichen an den gewünschten Ausdruck "heranzuarbeiten", da sieht man schneller, an welcher Stelle es hakt.