AGB  ·  Datenschutz  ·  Impressum  







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

Zahlen in einem String finden

Ein Thema von ATS3788 · begonnen am 22. Nov 2012 · letzter Beitrag vom 23. Nov 2012
 
Benutzerbild von himitsu
himitsu
Online

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

AW: Zahlen in einem String finden

  Alt 23. Nov 2012, 10:31
Nja, bei Unicode macht der Code eventuell nicht ganz, was er soll. (aber zumindestens gibt es keine Zugriffsverletzungen)

Aber am Sichersten ist hier nicht array[0..255] aka array[Byte] , sondern array[Char] , also ein Array mit Feldern für jeden Char-Wert.
Und man kommt beim Char auch ohne Konvertierung aus, da es ja schon Chars sind.
Delphi-Quellcode:
myarray = array[Char] of Integer;

FillChar(myarray, SizeOf(myarray), 0);
for i := 1 to Length(mystring) do
  Inc(myarray[mystring[i]]);
// mit Forin sieht es auch ganz nett aus (wenn das Delphi sowas schon kann)
for C in mystring do
  Inc(myarray[C]);

for C := '0to '9do
  WriteLn(C, ' ', myarray[C]); // man kann die Typumwandlungen vom Write/Writeln auch benutzen, wenn man mag

bzw. nur das, was man braucht
Delphi-Quellcode:
myarray = array['0'..'9'] of Integer;

FillChar(myarray, SizeOf(myarray), 0);
for i := 1 to Length(mystring) do
  if mystring[i] in ['0'..'9'] then
    Inc(myarray[mystring[i]]);
for C in mystring do
  if CharInset(mystring[i], ['0'..'9']) then
    Inc(myarray[C]);

for C := '0to '9do // for C := Low(myarray) to High(myarray) do
  WriteLn(C, ' ', myarray[C]);
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (23. Nov 2012 um 10:35 Uhr)
  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 18:46 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