AGB  ·  Datenschutz  ·  Impressum  







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

Ist ein Zeichen ein Buchstabe?

Ein Thema von BlueStarHH · begonnen am 14. Sep 2012 · letzter Beitrag vom 14. Sep 2012
Antwort Antwort
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
850 Beiträge
 
Delphi 11 Alexandria
 
#1

Ist ein Zeichen ein Buchstabe?

  Alt 14. Sep 2012, 10:42
Hallo,

wie kann ich erkenne, ob ein Zeichen ein Buchstabe ist? Beim einfachen ASCII-Zeichensatz ging das ja noch relativ einfach mit CharInSet(MeinZeichen, ['A'..'Z']). Doch wie prüfe ich das nun bei Unicode? Da kann man ja schlecht alle möglichen Zeichen in allen Sprachen als Set aufzählen. Gibt es da schon eine fertige Funktion?
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Ist ein Zeichen ein Buchstabe?

  Alt 14. Sep 2012, 10:45
IsCharAlpha bzw. IsCharAlphaNumeric
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Ist ein Zeichen ein Buchstabe?

  Alt 14. Sep 2012, 10:45
Moin,

möglicherweise ist die Funktion Delphi-Referenz durchsuchenSystem.Character.IsLetter etwas für Dich.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Ist ein Zeichen ein Buchstabe?

  Alt 14. Sep 2012, 11:11
In ein "Set" paßt es eh nicht, da dieses nur 256 Zeichen enthalten kann.

siehe auch Character.pas, bzw. System.Character.pas (Daniels Link falsch gelesen)
Aber vielleicht auch direkt auf Delphi-Referenz durchsuchenTCharacter.IsLetter losgehn.

Zitat:
ging das ja noch relativ einfach
Eigentlich nicht, denn je nach Codepage hast du da einige "Buchstaben" (z.B. äüößé) übersehn.
Im "Unicode" ist alles fest und wird nicht von sowas wie Codepages verändert. (gleiche Bytes = unterschiedliche Zeichen/Buchstaben)
Aber je nach implementierter Unicode-Version liefern die Testfunktionen (IsLetter/IsCharIsAlpha/usw.) dennoch unterschiedliche Ergebnisse, da mit der Zeit neue Zeichen aufgenommen werden und sich doch mal Kleinigekeiten verändern oder gar rausfliegen.
$2B or not $2B

Geändert von himitsu (14. Sep 2012 um 11:22 Uhr)
  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 04:16 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