www.wikidata.de-de.nina.az
Der Unicode Standard beinhaltet verschiedene Algorithmen die die Gross und Kleinschreibung englisch case betreffen die Unicode Casing Algorithmen Diese Algorithmen erlauben es Texte in eine andere Schreibweise zu uberfuhren etwa alle Buchstaben in Kleinbuchstaben verwandeln festzustellen ob ein Text in einer bestimmten Schreibweise vorliegt beispielsweise vollstandig in Grossschreibung und zwei Texte unabhangig von ihrer Schreibweise auf Gleichheit zu uberprufen Die Algorithmen erlauben teilweise eine Anpassung an die verwendete Sprache So ist in den meisten Sprachen der zum kleinen i gehorende Grossbuchstabe das gewohnliche grosse I im Turkischen dagegen das grosse I mit ubergesetztem Punkt Inhaltsverzeichnis 1 Grundlagen 2 Anderung der Schreibweise 3 Schreibweisen unabhangiger Vergleich 4 Feststellen der Schreibweise 5 Quellen 6 WeblinksGrundlagen BearbeitenEs gibt drei verschiedene Schreibweisen die einen speziellen Namen haben Die Kleinschreibung bei der alle Buchstaben als Kleinbuchstaben vorliegen die Grossschreibung bei der alle Buchstaben als Grossbuchstaben vorliegen und die Titelschreibung bei der jeweils der erste Buchstabe eines Wortes ein Grossbuchstabe ist wahrend die folgenden Buchstaben Kleinbuchstaben sind Zudem gibt es die sogenannte Casefold Normalform Zu jedem Unicode Zeichen definiert der Unicode Standard eine Reihe von Eigenschaften die bei den Algorithmen verwendet werden Diese Eigenschaften geben an ob ein Zeichen ein Klein oder ein Grossbuchstabe ist und welches gegebenenfalls der zugehorige Gross oder Kleinbuchstabe ist Die Zuordnungen von Klein und Grossbuchstaben konnen in drei Gruppen aufgeteilt werden Bei den einfachen Abbildungen wird jedem Buchstaben nur ein einzelnes Zeichen zugeordnet etwa a als Kleinbuchstabe zu A Bei den komplexen Abbildungen wird einem Buchstaben eine Zeichenkette aus mehreren Zeichen zugeordnet So wird das ss beim Umwandeln in Grossbuchstaben zu zwei Zeichen SS Dies geschieht auch bei Umwandlungen von Buchstaben mit diakritischen Zeichen die in nur einer Schreibweise kodiert wurden Das kleine W mit ubergesetztem Ring ẘ U 1E98 muss bei der Umwandlung in Grossbuchstaben durch zwei Zeichen dargestellt werden ein grosses W und ein kombinierender ubergesetzter Ring Schliesslich gibt es noch Umwandlungen die von der Sprache oder von einem bestimmten Kontext abhangen So wird das grosse griechische Sigma S U 03A3 bei der Umwandlung in Kleinschreibung zum gewohnlichen kleinen Sigma s U 03C3 ausser es steht am Ende eines Wortes In diesem Fall nimmt der Kleinbuchstabe die Schlussform s U 03C2 an Umfangreiche Regeln fur verschiedene Sprachen stehen im Common Locale Data Repository zur Verfugung Anderung der Schreibweise BearbeitenUm einen Text in Kleinschreibung zu uberfuhren wird jedes Zeichen durch den zugehorigen Kleinbuchstaben ersetzt Dabei sind sowohl die einfachen als auch die komplexen Umwandlungen anzuwenden sowie der Kontext zu beachten in dem das Zeichen jeweils steht Analog wird die Umwandlung in Grossschreibung durchgefuhrt Fur die Umwandlung in Titelschreibung werden zunachst die Wortgrenzen gemass dem entsprechenden Unicode Segmentierungsalgorithmus bestimmt Fur jedes Wort wird das erste Zeichen ermittelt das in unterschiedlichen Schreibweisen vorliegen kann und dieses durch die zugehorige Titelschreibung ersetzt Die restlichen Zeichen bis zur nachsten Wortgrenze werden in Kleinbuchstaben umgewandelt Mogliche Anpassungen dieser Algorithmen bestehen darin andere Abbildungen fur die einzelnen Zeichen zu verwenden beispielsweise nur die einfachen Umwandlungen oder sprachspezifische Varianten Auch konnte man das grosse ss als Grossschreibung des ss verwenden Will man beispielsweise das Wort Wikipedia in Grossschreibung umwandeln so ersetzt man einfach jeden Buchstaben durch den zugehorigen Grossbuchstaben und erhalt WIKIPEDIA Uberfuhrt man dagegen das turkische Wort fur Wikipedia Vikipedi in Grossschreibung so sollte man die entsprechenden Abbildungen fur Turkisch verwenden die als Grossbuchstabe zum i das I U 0130 angeben sodass sich hier VIKIPEDI ergibt Mochte man KOSMOS in Kleinbuchstaben umwandeln so steht das erste Sigma in der Wortmitte wird also zu s wahrend das zweite Sigma am Wortende steht und in ein s umgewandelt wird Es ergibt sich also kosmos Schreibweisen unabhangiger Vergleich BearbeitenUm zwei Texte unabhangig von ihrer Schreibweise auf Gleichheit zu uberprufen werden beide in eine spezielle Normalform uberfuhrt Diese casefold genannte Normalform basiert im Wesentlichen auf der Kleinschreibung Auch hier werden alle Zeichen einzeln durch ihre Case Folding Entsprechung ersetzt Anschliessend sollten beide Texte in dieselbe Unicode Normalform uberfuhrt werden bevor sie verglichen werden Tatsachlich ist es in einigen seltenen Fallen notwendig die verschiedenen Normalisierungen mehrfach abwechselnd zu wiederholen Eine spezielle Variante ist fur schreibweisen unabhangige Bezeichner in Programmiersprachen gedacht Hier werden zusatzlich alle Zeichen entfernt die als Default Ignorable gekennzeichnet sind etwa Steuerzeichen zur Formatierung und die Zeichenkette anschliessend in die Normalform NFKC uberfuhrt Zur Vereinfachung gibt es die Eigenschaft NFKC Casefold die eine einfache Umwandlung der einzelnen Zeichen erlaubt sodass am Ende nur noch die Umordnung der kombinierenden Zeichen und die Uberfuhrung in die kombinierte Normalform separat erfolgen muss Will man beispielsweise prufen ob die beiden Worter MASSE und Masse unabhangig von der Schreibweise ubereinstimmen so uberfuhrt man beide in die Casefold Normalform indem man fur jeden Buchstaben die Case Folding Eigenschaft nachschlagt und die Buchstaben entsprechend ersetzt Fur das erste Wort ergibt sich masse da alle Grossbuchstaben durch Kleinbuchstaben ersetzt werden Auch das zweite Wort wird zu masse normalisiert da fur das ss die Normalisierung ss angegeben ist Die beiden Worter stimmen also bis auf die Schreibweise uberein Feststellen der Schreibweise BearbeitenUm festzustellen ob ein Text in einer bestimmten Schreibweise vorliegt wird er in diese umgewandelt Andert er sich dabei nicht so lag er bereits in dieser Schreibweise vor Zur Vereinfachung steht zu jeder Schreibweise einschliesslich des casefold eine Eigenschaft zur Verfugung die angibt ob sich das Zeichen andert oder nicht sodass nur noch fur jedes Zeichen diese Eigenschaft getestet werden muss Genau dann liegt ein Text in einer bestimmten Schreibweise vor wenn keines seiner Zeichen sich bei der Umwandlung andern wurde Texte die nur aus Zeichen bestehen die wie Ziffern keine unterschiedliche Gross oder Kleinschreibung besitzen liegen nach dieser Definition in jeder Schreibweise vor Um also zu uberprufen ob ein Text vollstandig in Kleinbuchstaben vorliegt ist es sinnvoll nicht nur zu prufen ob er sich nach dieser Definition in Kleinschreibung befindet Zusatzlich sollte getestet werden ob es eine Schreibweise gibt die nicht zutrifft So liegen sowohl UNICODE als auch 123 in Grossschreibung vor nicht aber Unicode Dies kann man entweder uberprufen indem man die Umwandlungen vornimmt oder indem man die Changes When Uppercased Eigenschaft aller Zeichen betrachtet Wahrend bei den beiden ersten Zeichenketten diese fur alle Zeichen falsch ist hat die dritte Zeichenkette Buchstaben mit dieser Eigenschaft namlich das n und alle folgenden UNICODE ist dabei eine echte Grossschreibung da das Wort nicht auch in Kleinschreibung vorliegt diese ware unicode 123 liegt dagegen in allen Schreibweisen vor wie man durch die einzelnen Umwandlungen uberprufen kann oder anhand der Changes When Casemapped Eigenschaft Diese gibt an ob sich ein Zeichen bei irgendeiner Umwandlung andert Fur die Ziffern ist sie also immer falsch wahrend sie bei lateinischen Buchstaben zutrifft Quellen BearbeitenJulie D Allen et al The Unicode Standard Version 6 2 Core Specification The Unicode Consortium Mountain View CA 2012 ISBN 978 1 936213 07 8 online PDF Weblinks BearbeitenDemonstration verschiedener Umwandlungen englisch Abgerufen von https de wikipedia org w index php title Unicode Casing Algorithmus amp oldid 173563709