[gelöst] mal wieder regex, wie?

Begonnen von franky08, 20 Oktober 2019, 19:04:46

Vorheriges Thema - Nächstes Thema

franky08

Da ich seit Ewigkeiten nichts mehr mit Perl oder regex zu tun hatte, habe ich nun wohl auch noch die paar Grundlagen vergessen die ich mal kannte.
my $stday = ReadingsVal("Statistik_dummy","Tag",0);
my @daten = split(/ /,$stday);

my $tag_spl = $daten[0]; #tag

fhem "setreading Statistik_dummy Tag_split $tag_spl";


damit splitte ich solch einen Datensatz auf:
8.76589999999999: 00:00:00 8.76589999999999_Count: 1 (since: 2019-10-20_17:19:26)

Ergebnis ist dann:
Tag_split 8.76589999999999:

Das hätte ich gerne ohne den störenden ":"

Irgendwie bekomme ich den nicht "abgeschnitten", bin da aber auch schon seit längeren nicht mehr in der Materie.

VG franky08
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

Beta-User

Versuch's mal mit
my $tag_spl = chop($daten[0]); #tag
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

DS_Starter

Ich hätte folgendes anzubieten:


my $stday = ReadingsVal("Statistik_dummy","Tag",0);
$stday      = s/(\d+.\d+):\s+.*/$1/;
fhem "setreading Statistik_dummy Tag_split $stday";


Nicht getestet, aber sollte tun.

Grüße,
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

KölnSolar

oder anstatt
Zitatmy @daten = split(/ /,$stday);
my @daten = split(/:/,$stday);
(wobei Heiko natürlich die schönere Lösung präsentiert) :)
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

franky08

my @daten = split(/:/,$stday);

das hatte ich schon, habe mich aber vertippt und noch ein Leerzeichen mit drinne und daran ist es wohl gescheitert :-(

Danke für die Tipp`s
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1