grep und sed , gleicher Regulärer Ausdruck , sed mit falschem Ergebnis.

Josef Federl - Samstag, 15. April 2017 00:23:41 - 1 Antworten

Daten:
dlfkjgkldgjldfgl55.55klsdjfl
jfjfjfj8.22fdgddfg
{"id":"1","name":"Phase L1","unit":"A","type":"1","value":"0.00","error":0}
{"id":"2","name":"Phase L2","unit":"A","type":"1","value":"10.03","error":0}
{"id":"3","name":"Phase L3","unit":"A","type":"1","value":"-2.00","error":0}

Abfragen:
acersepp@~: grep -o '\-\?[0-9]\{1,2\}\.[0-9]\{2\}' stromsed
55.55
8.22
0.00
10.03
-2.00
acersepp@~: sed 's/.*\(\-\?[0-9]\{1,2\}\.[0-9]\{2\}\).*/\1/' stromsed
5.55
8.22
0.00
0.03
2.00
acersepp@~:

Ich kann hier nicht erkennen wieso sed nicht das richtige Ergebnis liefert?

Antworten
Die Gier ist schuld
TomH (unangemeldet), Mittwoch, 19. April 2017 10:57:26
Ein/Ausklappen

das führende '.*' im match ist gierig, d.h., es matcht auch das '-'

in Perl regex kann man das durch nachstellen eines '?' ungierig machen, was im sed aber nicht klappt.

perl -pe 's/.*?(-?[0-9]{1,2}.[0-9]{2}).*/\1/' stromsed
55.55
8.22
0.00
10.03
-2.00



Bewertung: 224 Punkte bei 63 Stimmen.
Den Beitrag bewerten: Gut / Schlecht

Ähnliche Artikel

  • The Answer Girl
    Solange man online ist, halten sich die Sprachprobleme in Grenzen: Web-Wörterbücher wie dict.leo.org helfen in meistens akzeptabler Geschwindigkeit über die Hürden des fehlenden (Englisch-) Wortschatzes hinweg. Doch wehe, man ist weder mit Standleitung noch Flatrate gesegnet: Schon ärgert man sich, das Regal mit den papiernen Wörterbüchern am anderen Ende des Raums aufgestellt zu haben.
  • Zu Befehl: Suchen mit grep, egrep, fgrep, (b)zgrep
    Für die Suche nach Wörtern und Ausdrücken in Textdateien bieten sich die Kommandos der grep-Familie an. Als Ergebnis zeigen sie wahlweise die gefundenen Zeilen, die Namen der Dateien, in denen das Suchmuster vorkommt, oder die Anzahl der Treffer an.
  • Erste Schritte mit Regular Expressions
    Computer erleichtern die Arbeit – man muss ihnen nur genau sagen, was sie tun sollen. Mit regulären Ausdrücken beschleunigen Sie das Suchen und Ersetzen von Zeichenketten auf elegante Art.
  • Schnipseljagd
    Computer erleichtern die Arbeit – sofern man ihnen genau sagt, was sie tun sollen. Mit regulären Ausdrücken beschleunigen Sie das Suchen und Ersetzen von Zeichenketten auf elegante Art.
  • The Answer Girl
    Dass der Computeralltag auch unter Linux immer wieder für Überraschungen gut ist, ist eher eine Binsenweisheit: Immer wieder funktionieren Dinge nicht oder nicht so, wie eigentlich angenommen. Das Answer-Girl im Linux-Magazin zeigt, wie man mit solchen Problemchen elegant fertig wird.

Aktuelle Fragen

Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 3 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...
Backup mit KUP unter Suse 42.3
Horst Schwarz, 24.09.2017 13:16, 3 Antworten
Ich möchte auch wieder unter Suse 42.3 mit Kup meine Backup durchführen. Eine Installationsmöglic...
kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 5 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...

Stellenmarkt

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] Ubuntu 17.10 Synaptic nicht startbar
Nguyen Dong Loan, 23.10.2017 16:15
Am Sonntag, den 22.10.2017, 22:42 +0200 schrieb Matthias Müller: Hallo Gerd Hallo Matthias > Geht mir...
Re: [EasyLinux-Ubuntu] Ubuntu 17.10 Neue (Text)Datei anlegen
Nguyen Dong Loan, 23.10.2017 16:10
Am Montag, den 23.10.2017, 09:28 +0200 schrieb Uwe Herrmuth: Hallo Uwe > Ich weiß z.B. nicht, welches To...
Re: [EasyLinux-Ubuntu] Ubuntu 17.10 Neue (Text)Datei anlegen
Uwe Herrmuth, 23.10.2017 09:28
Hallo Gerd, Gerd schrieb am 22.10.2017 um 15:51: > das Subject sag schon alles. > Wie legt man in d...
Re: [EasyLinux-Ubuntu] Ubuntu 17.10 Synaptic nicht startbar
Matthias, 22.10.2017 22:42
Am Sonntag, 22. Oktober 2017, 18:23:19 CEST schrieb Gerd Pfannenstiel: > Hallo > > Auch hier sa...
Re: [EasyLinux-Ubuntu] Ubuntu 17.10 Neue (Text)Datei anlegen
Karl-Heinz, 22.10.2017 20:50
Am Sun, 22 Oct 2017 15:51:13 +0200 (CEST) schrieb Gerd Pfannenstiel : Hallo Gerd, hört sich nach Nautilus...