AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

posex oder pos, fester trenner im string

Ein Thema von motec · begonnen am 21. Aug 2014 · letzter Beitrag vom 22. Aug 2014
Antwort Antwort
Seite 2 von 3     12 3      
Dejan Vu
(Gast)

n/a Beiträge
 
#11

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 08:47
Dann steht zwischen den Delimitern nichts und die Routine liefern einen leeren String. Mit '|' wäre das genau so.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#12

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 08:51
@Dejan Vu:
Die vielen Klammeraffen am Stringende könnten dem TE beim PoSex vllt. Schwierigkeiten machen, daher der StringReplace-Vorschlag

MfG
So ein blindes StringReplace (blind in der Funktion und Anwendung) ist immer der Anfang von Problemen, die einen früher oder später einholen.

Warum schreibt man sich nicht eine Funktion, die das auch wirklich interpretieren kann?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
motec

Registriert seit: 21. Aug 2014
2 Beiträge
 
#13

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 08:53
Vielen Dank an ALLE für die Hinweise, SplitString hat mir geholfen.

#Jens01 Perversling ist, wer an perverses denkt.

Super Forum, hat mir bei einem laufenden Projekt in vielen Fragen geholfen.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#14

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 09:22
Bezüglich dem StringReplace-Vorschlag:

Einige Split-Funktionen können nur mit einzelnen Trennzeichen, aber nicht mit Trenn-Sequenzen umgehen,
also nur ein und nicht mehrere Zeichen.

Wenn man soeine Funktion verwendet, dann muß man entweder die "Trennzeichen" ersetzen,
oder man löscht/ignoriert nach dem auftrennen jede zweite Zeile.

Hier darf aber das "Trennzeichen" als "Einzelzeichen" nicht in den Strings vorkommen, denn wenn das so ist, dann muß es wirklich als Trenn-Sequenz behandelt werden.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#15

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 09:31
Man muss sich eben entscheiden, ob man Daten so interpretiert, wie die Vereinbarung/das Protokoll das vorsieht oder eben nur quasi so in etwa.

Wundern darf man sich dann aber auch nicht wenn das Ergebins auch so aussieht: Wie vereibart oder quasi so in etwa
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
pelzig
(Gast)

n/a Beiträge
 
#16

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 10:09
Wenn die Vereinbarung der doppelte Klammeraffe als Trennzeichen war: Warum nicht lokal in ein gängigeres Trennzeichen stringreplacen?

Ich benutze das StringReplace um eingehenden Kram notfalls CSV-kompatibel zu machen, um dann meine CSV-Funktionen (und ggfs. Excel oder LibreOfficeCalc zwecks Kontrolle) darauf loszulassen.

Wie himitsu schon schrub: Bei mir muss das Trennzeichen ein Zeichen, keine Zeichenfolge sein.

Jeder wie er kann oder muss. Manche sind halt "Profis", ich eher nicht. Bisher ist mir noch nichts um die Ohren geflogen, was "quasi so in etwa" war. Habe bisher wohl offensichtlich nur Anfängerglück gehabt

===========================================
quasi = ungefähr
etwa = ungefähr

quasi so in etwa = ungefähr so in ungefähr
===========================================

Das Problem des TE wurde gelöst, also bitte Ruhe im Karton

MfG
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#17

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 10:33
Einige Split-Funktionen können nur mit einzelnen Trennzeichen, aber nicht mit Trenn-Sequenzen umgehen
Dann sind das keine sonderlich guten 'Split' Funktionen. Da schreibe/suche ich mir lieber eine ordentliche Routine, als die Eingabe (meinen String) zu umzuverknurpseln, das die kastrierte Split-Routine damit klar kommt.

Für mich ist die ideale Split-Funktion übrigens die hier.
Aber irgendwie habe ich den Eindruck, das es derzeit im Forum keine richtigen Probleme mehr gibt, sonst würden wir uns hier nicht seitenlang über Split-Routinen unterhalten.

Wenn die Vereinbarung der doppelte Klammeraffe als Trennzeichen war: Warum nicht lokal in ein gängigeres Trennzeichen stringreplacen?
Wenn man das dann mit Excel weiterverarbeiten will, bleibt Dir ja nichts anderes übrig. Aber ich finde in der Frage des TE den Hinweis nicht, das er das mit Excel weiterverarbeiten will. Ergo halte ich deine Idee für umständlich.
Zitat:
Das Problem des TE wurde gelöst, also bitte Ruhe im Karton
Eben. Wozu dann also deine Ausführungen?

Außerdem bin ich nich im Karton.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.442 Beiträge
 
Delphi 12 Athens
 
#18

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 11:01
Einige Split-Funktionen können nur mit einzelnen Trennzeichen, aber nicht mit Trenn-Sequenzen umgehen,
also nur ein und nicht mehrere Zeichen.
Für diesen Fall kann man (in neueren Delphi-Versionen) auch die TStringList verwenden: How to split string by a multi-character delimiter?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#19

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 11:11
Dann sind das keine sonderlich guten 'Split' Funktionen.
Das kommt auf die Definition an.

Es gibt Split-Funktionen, die bekommen 2 Parameter rein.
- den aufzuteilenden String
- und einen String mit allen Trennzeichen
Da wird dann in dem "Trennzeichenstring" jedes Zeichen als eigenständige Trennzeichen verwendet.
Split('a*b c', '* ') würde dann quasi einem Split('a*b c', ['*', ' ']) entsprechen.


Und jetzt rate mal, was man im Delphi verbaut hat.
Aber wenn man genau hin sieht, dann fällt einem das "s", am Ende des Delimiters-Parameter auf.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
pelzig
(Gast)

n/a Beiträge
 
#20

AW: posex oder pos, fester trenner im string

  Alt 22. Aug 2014, 12:19
Einige Split-Funktionen können nur mit einzelnen Trennzeichen, aber nicht mit Trenn-Sequenzen umgehen,
also nur ein und nicht mehrere Zeichen.
Für diesen Fall kann man (in neueren Delphi-Versionen) auch die TStringList verwenden: How to split string by a multi-character delimiter?
Stammt die Frage nach Delphi 6 nicht von Dir?

Wie würden Deine Antworten denn für D7..XE7 ausfallen?

Warum eigentlich sollte man jede Frage nicht eigentlich immer bis auf die Assemblerbefehle des 8086 mit dem Azwangsigergate hin reANALysiren?

Was mich OT mehr interessieren würde:

Nagelneue/sauteure WP8.1 Smartphones haben eine gewisse Rechenleistung.
Wie lässt sich deren Rechenleistung mit einem herkömmlichen PC vergleichen?

MfG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 08:55 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