[gelöst] Zahlen aus Tabelle (RegEx)

Begonnen von stera, 18 März 2021, 04:54:30

Vorheriges Thema - Nächstes Thema

stera

Hallo zusammen,

ich komme mit dem auslesen von Zahlen bei RegEx nicht weiter. Würde gerne aus einem bestimmten Bereich Zahlen aus einer HTML Tabelle haben.
Als Beispiel hier, Alle Zahlen von ZahlenA und später als Einzelreading in HTTPMod


<tr>
<td>ZahlenA</td>
<td>84,8</td>
<td>21</td>
<td>7</td>
<td>3</td>
<td>3</td>
<td>11</td>
<td>13</td>
<td>10</td>
</tr>
<tr>
<td>ZahlenB</td>
<td>84,8</td>
<td>21</td>
<td>7</td>
<td>3</td>
<td>3</td>
<td>11</td>
<td>13</td>
<td>10</td>
</tr>



(?s)(\d\d\,\d|\d\d|\d)   -> Das gibt mir alle Zahlen von beiden Tabellen

(?s)ZahlenA.*?(\d\d\,\d|\d\d|\d).*?tr>     -> Das gibt mir nur die erst Zahl der Tabelle

Danke für eure Hilfe.


DeeSPe

ZahlenA<[\S\s\r\n]*?<td>(\d{1,3},?\d?)<[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)

Mit diesem RegEx bekommst Du alle Zahlen in entsprechenden Captcher Groups.
Wenn der RegEx bei HTTPMOD hinterlegt wird entstehen dort mehrere Readings entsprechend der Captcher Groups.
z.B.
attr <name> reading01Name ZahlenA
attr <name> reading01Regex ZahlenA<[\S\s\r\n]*?<td>(\d{1,3},?\d?)<[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)[\S\s\r\n]*?<td>(\d{1,3},?\d?)


Dann entstehen die Readings "ZahlenA-1", "ZahlenA-2" usw.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

stera

Sorry für die späte Antwort. Vielen Dank, dass klappt super  :)

Schönen Sonntag noch.