AGB  ·  Datenschutz  ·  Impressum  







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

StringList Buchstaben verbieten?

Ein Thema von zobien123 · begonnen am 18. Apr 2017 · letzter Beitrag vom 19. Apr 2017
 
BrightAngel

Registriert seit: 13. Mär 2007
130 Beiträge
 
#6

AW: StringList Buchstaben verbieten?

  Alt 18. Apr 2017, 12:06
Delphi-Quellcode:
...
      if not (s[i] in NUMBERS) then
...
Das könnte man vermutlich noch effizienter machen, wenn man direkt die ASCII Randwerte '0' und '9' vergleicht.

Zur Erklärung grob vereinfacht: Jedes Zeichen entspricht einem numerischen Wert (also Strings sind eigentlich Zahlenketten; jede Zahl hat dann eine standardisierte Entsprechung). So weiß dann Windows oder dein Textzeichner deiner Wahl, welche Glyphe verwendet werden soll, die es zeichnen soll. So. Und jetzt ist das Schöne, dass die Zeichencodes von 0 bis 9 zufällig (?) nebeneinander liegen. Also 48 dezimal ist die '0', 49 ist die '1',..., 57 ist die '9'. Die verschiedenen Codierungen sollten bei den Ziffern zumindest noch keinen Unterschied machen. Du könntest also mit den Größer/Kleiner Operatoren schauen, ob s[i] im entsprechenden Zahlenabschnitt ist. Dadurch, dass du nur mit '0' und '9' vergleichen musst, wird die Prüfung ein wenig effizienter, als wenn du in einem NUMBERS Feld nachschaust (der in -Operator macht nach dem Übersetzen eine lineare Suche durch das Feld -> Aufwand ist multiplikativ mit der Länge des NUMBERS -Feldes verknüpft)

Wenn du natürlich auf beliebige bestimmte Zeichen testen musst, dann funktioniert dieser Trick unter Umständnen nicht mehr...
Hoffe, ich habe nicht mehr verwirrt, als geholfen. Im Zweifel diesen Post einfach ignorieren

Brighty
Do you have the email of god??? --- I have to tell him that I'm happy to be born!

Geändert von BrightAngel (18. Apr 2017 um 12:18 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 05:52 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 by Thomas Breitkreuz