AGB  ·  Datenschutz  ·  Impressum  







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

string.Split mit Count

Ein Thema von himitsu · begonnen am 29. Sep 2024 · letzter Beitrag vom 2. Okt 2024
 
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: string.Split mit Count

  Alt 30. Sep 2024, 10:15
Ich bin auch der Meinung, dass das aktuelle Verhalten nicht verändert werden darf und, wenn überhaupt, weitere Optionen das Mittel der Wahl sind.

Wie auch immer das dann auch realisiert würde, persönlich wäre ich schon irritiert, wenn der letzte Eintrag im Rückgabe-Array noch Trennzeichen enthalten würde ohne dass er gequoted wäre. Wie könnte man sonst feststellen, ob dieser Eintrag ein Reststring ist oder aus einem QuotedString entstanden ist.
Delphi-Quellcode:
var S1 := 'Hallo,Welt,Dies,ist,ein,RestString';
var S1 := 'Hallo,Welt,"Dies,ist,der,dritte,Eintrag"';
In dem Fall würde ich wohl eher einen separaten Out-Parameter vorziehen in dem dann der Reststring steht, der über das Limit (Count) hinausgeht.

-> Bug oder nicht
Definitiv kein Bug sondern Personal Preference: Das erwartete Verhalten ist halt immer zu einem gewissen Teil subjektiv und fundiert oft nur auf einer aktuellen Problemstellung. In einen Jahr kann das schon wieder anders aussehen. Insofern kann es da kein richtig oder falsch geben.

In meinem Fall ist es so, dass im "letzten" String auch das Trennzeichen manchmal mit enthalten sein könnte.
Das ist allerdings schon ein sehr spezieller Fall und sollte meiner Meinung nach nicht Grundlage für ein generelles Verhalten einer Funktion sein. Er ist insbesondere speziell, weil es ausschließlich für den letzten Eintrag eine Sonderrolle vorsieht (nämlich dass er Trennzeichen enthalten kann). Ich würde diesen letzten String einfach quoten um diese Sonderrolle auch deutlich zu machen. Das ließe sich leicht durch eine vorgeschaltete Bereinigungsfunktion erledigen. Das wäre allemal besser, als eine Erweiterung der Split-Funktion anzufordern, die lediglich diesen Sonderfall mit abdeckt.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
 


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 16:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz