AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Bestimmte Zeilen aus Stringlist extrahieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bestimmte Zeilen aus Stringlist extrahieren

Ein Thema von ashkan19 · begonnen am 7. Dez 2020 · letzter Beitrag vom 8. Dez 2020
Antwort Antwort
ashkan19

Registriert seit: 13. Okt 2020
36 Beiträge
 
#1

Bestimmte Zeilen aus Stringlist extrahieren

  Alt 7. Dez 2020, 11:07
Hallo allerseits,

Ich hab folgendes Text in einem Stringlistlist names str3 gespeichert, welche genau wie folgt aussieht:

Code:
cat /var/log/cellphone.log


+CME ERROR

+CME ERROR

+QSIMDET: 0,0



OK



+QCSQ: "NOSERVICE"



OK



OK



Quectel

BG96

Revision: BG96MAR02A07M1G



OK



864431046924538



OK



BG96MAR02A07M1G_01.016.01.016



OK



+QNWINFO: No Service



OK



OK

root@SystemV6:~

nun möchte ich ganz einfach jede Zeile, die ein : beinhaltet behalten und den rest löschen. wäre für jede Hilfe dankbar
  Mit Zitat antworten Zitat
lxo

Registriert seit: 30. Nov 2017
288 Beiträge
 
Delphi 12 Athens
 
#2

AW: Bestimmte Zeilen aus Stringlist extrahieren

  Alt 7. Dez 2020, 11:22
Hallo,
vielleicht sowas in der Art?
Delphi-Quellcode:
   for i := Pred( <TStringList>.Count) downto 0 do
   begin
     if not <TStringList>[i].Contains( ':') then
     begin
        <TStringList>.Delete( i);
     end;
   end;
Alternativ bei älteren Delphi-Versionen so:
Delphi-Quellcode:
   for i := ( <TStringList>.Count -1) downto 0 do
   begin
     if Pos( ':', <TStringList>[i]) = 0 then
     begin
        <TStringList>.Delete( i);
     end;
   end;

Geändert von lxo ( 7. Dez 2020 um 11:26 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.355 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Bestimmte Zeilen aus Stringlist extrahieren

  Alt 7. Dez 2020, 11:23
Die Funktion Pos liefert dir die Information, ob ein Doppelpunkt im String enthalten ist. TStringList enthält die Methode Delete . Damit kannst du einzelne Zeilen aus deiner Stringliste entfernen. Das ganze in einer hübschen Schleife verpackt, sollte dir dein gewünschtes Ergebnis liefern.
Statt Pos kannst du auch z.B. str3.strings[i].contains verwenden, sofern du ein einigermaßen aktuelles Delphi verwendest. Für Details zu den Funktionen sollte die Delphi-Hilfe genügend Informationen liefern.
Peter
  Mit Zitat antworten Zitat
ashkan19

Registriert seit: 13. Okt 2020
36 Beiträge
 
#4

AW: Bestimmte Zeilen aus Stringlist extrahieren

  Alt 7. Dez 2020, 11:27
Hallo,
vielleicht sowas in der Art?
Delphi-Quellcode:
   for i := Pred( <TStringList>.Count) downto 0 do
   begin
     if not <TStringList>[i].Contains( ':') then
     begin
        <TStringList>.Delete( i);
     end;
   end;
Alternativ bei älteren Delphi-Versionen so:
Delphi-Quellcode:
   for i := ( <TStringList>.Count -1) downto 0 do
   begin
     if Pos( ':', <TStringList>[i]) = 0 then
     begin
        <TStringList>.Delete( i);
     end;
   end;
Super, ich danke dir....das mit Contains funktioniert super
  Mit Zitat antworten Zitat
stifflersmom

Registriert seit: 8. Dez 2005
Ort: 24994 Holt
380 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: Bestimmte Zeilen aus Stringlist extrahieren

  Alt 7. Dez 2020, 13:31
Eine Zusatzfrage von mir:

die Datei wird doch über cat aus der Shell in einem Linux System erstellt.
Warum machst Du nicht gleich ein cat dateiname|grep :>neuer_dateiname.txt
  Mit Zitat antworten Zitat
ashkan19

Registriert seit: 13. Okt 2020
36 Beiträge
 
#6

AW: Bestimmte Zeilen aus Stringlist extrahieren

  Alt 8. Dez 2020, 13:21
Eine Zusatzfrage von mir:

die Datei wird doch über cat aus der Shell in einem Linux System erstellt.
Warum machst Du nicht gleich ein cat dateiname|grep :>neuer_dateiname.txt
weil das ganze dann auf die falsche Kiste gespeichert wird
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz