https://de.wikipedia.org/w/index.php?action=history&feed=atom&title=Unicode-Casing-AlgorithmusUnicode-Casing-Algorithmus - Versionsgeschichte2025-06-11T05:08:26ZVersionsgeschichte dieser Seite in WikipediaMediaWiki 1.45.0-wmf.4https://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=173563709&oldid=prevTYSK am 1. Februar 2018 um 16:32 Uhr2018-02-01T16:32:29Z<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 1. Februar 2018, 18:32 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 2:</td>
<td colspan="2" class="diff-lineno">Zeile 2:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Grundlagen ==</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Grundlagen ==</div></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Es gibt drei verschiedene Schreibweisen, die einen speziellen Namen haben: Die Kleinschreibung, bei der alle Buchstaben als [[Kleinbuchstabe]]n vorliegen, die Großschreibung, bei der alle Buchstaben als [[Großbuchstabe]]n vorliegen, und die Titelschreibung, bei der jeweils der erste Buchstabe eines Wortes ein Großbuchstabe ist, während die folgenden Buchstaben Kleinbuchstaben sind. Zudem gibt es die sogenannte ''Casefold''-Normalform.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Es gibt drei verschiedene Schreibweisen, die einen speziellen Namen haben: Die Kleinschreibung, bei der alle Buchstaben als [[Kleinbuchstabe]]n vorliegen, die Großschreibung, bei der alle Buchstaben als [[<ins style="font-weight: bold; text-decoration: none;">Majuskel|</ins>Großbuchstabe]]n vorliegen, und die Titelschreibung, bei der jeweils der erste Buchstabe eines Wortes ein Großbuchstabe ist, während die folgenden Buchstaben Kleinbuchstaben sind. Zudem gibt es die sogenannte ''Casefold''-Normalform.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Zu jedem Unicode-Zeichen definiert der Unicode-Standard eine Reihe von [[Liste der Unicode-Eigenschaften|Eigenschaften]], die bei den Algorithmen verwendet werden. Diese Eigenschaften geben an, ob ein Zeichen ein Klein- oder ein Großbuchstabe ist, und welches gegebenenfalls der zugehörige Groß- oder Kleinbuchstabe ist.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Zu jedem Unicode-Zeichen definiert der Unicode-Standard eine Reihe von [[Liste der Unicode-Eigenschaften|Eigenschaften]], die bei den Algorithmen verwendet werden. Diese Eigenschaften geben an, ob ein Zeichen ein Klein- oder ein Großbuchstabe ist, und welches gegebenenfalls der zugehörige Groß- oder Kleinbuchstabe ist.</div></td>
</tr>
</table>TYSKhttps://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=166970387&oldid=prev194.25.30.14: /* Änderung der Schreibweise */2017-07-04T11:08:27Z<p><span class="autocomment">Änderung der Schreibweise</span></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 4. Juli 2017, 13:08 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 16:</td>
<td colspan="2" class="diff-lineno">Zeile 16:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Für die Umwandlung in Titelschreibung werden zunächst die Wortgrenzen gemäß dem entsprechenden [[Unicode-Segmentierungsalgorithmus]] bestimmt. Für jedes Wort wird das erste Zeichen ermittelt, das in unterschiedlichen Schreibweisen vorliegen kann und dieses durch die zugehörige Titelschreibung ersetzt. Die restlichen Zeichen bis zur nächsten Wortgrenze werden in Kleinbuchstaben umgewandelt.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Für die Umwandlung in Titelschreibung werden zunächst die Wortgrenzen gemäß dem entsprechenden [[Unicode-Segmentierungsalgorithmus]] bestimmt. Für jedes Wort wird das erste Zeichen ermittelt, das in unterschiedlichen Schreibweisen vorliegen kann und dieses durch die zugehörige Titelschreibung ersetzt. Die restlichen Zeichen bis zur nächsten Wortgrenze werden in Kleinbuchstaben umgewandelt.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Mögliche Anpassungen <del style="font-weight: bold; text-decoration: none;">dieses</del> <del style="font-weight: bold; text-decoration: none;">Algorithmus</del> bestehen darin, andere Abbildungen für die einzelnen Zeichen zu verwenden, beispielsweise nur die einfachen Umwandlungen oder sprachspezifische Varianten. Auch könnte man das [[Großes ß|große ß]] als Großschreibung des „[[ß]]“ verwenden.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Mögliche Anpassungen <ins style="font-weight: bold; text-decoration: none;">dieser</ins> <ins style="font-weight: bold; text-decoration: none;">Algorithmen</ins> bestehen darin, andere Abbildungen für die einzelnen Zeichen zu verwenden, beispielsweise nur die einfachen Umwandlungen oder sprachspezifische Varianten. Auch könnte man das [[Großes ß|große ß]] als Großschreibung des „[[ß]]“ verwenden.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Will man beispielsweise das Wort „Wikipedia“ in Großschreibung umwandeln, so ersetzt man einfach jeden Buchstaben durch den zugehörigen Großbuchstaben und erhält „WIKIPEDIA“. Überführt man dagegen das türkische Wort für Wikipedia „Vikipedi“ in Großschreibung, so sollte man die entsprechenden Abbildungen für Türkisch verwenden, die als Großbuchstabe zum „i“ das „İ“ (U+0130) angeben, sodass sich hier „VİKİPEDİ“ ergibt.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Will man beispielsweise das Wort „Wikipedia“ in Großschreibung umwandeln, so ersetzt man einfach jeden Buchstaben durch den zugehörigen Großbuchstaben und erhält „WIKIPEDIA“. Überführt man dagegen das türkische Wort für Wikipedia „Vikipedi“ in Großschreibung, so sollte man die entsprechenden Abbildungen für Türkisch verwenden, die als Großbuchstabe zum „i“ das „İ“ (U+0130) angeben, sodass sich hier „VİKİPEDİ“ ergibt.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Möchte man „ΚΌΣΜΟΣ“ in Kleinbuchstaben umwandeln, so steht das erste Sigma in der Wortmitte, wird <del style="font-weight: bold; text-decoration: none;">als</del> zu „σ“, während das zweite Sigma am Wortende steht und in ein „ς“ umgewandelt wird. Es ergibt sich also „κόσμος“.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Möchte man „ΚΌΣΜΟΣ“ in Kleinbuchstaben umwandeln, so steht das erste Sigma in der Wortmitte, wird <ins style="font-weight: bold; text-decoration: none;">also</ins> zu „σ“, während das zweite Sigma am Wortende steht und in ein „ς“ umgewandelt wird. Es ergibt sich also „κόσμος“.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Schreibweisen-unabhängiger Vergleich ==</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Schreibweisen-unabhängiger Vergleich ==</div></td>
</tr>
</table>194.25.30.14https://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=166970322&oldid=prev194.25.30.14: /* Grundlagen */2017-07-04T11:04:14Z<p><span class="autocomment">Grundlagen</span></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 4. Juli 2017, 13:04 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 8:</td>
<td colspan="2" class="diff-lineno">Zeile 8:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Die Zuordnungen von Klein- und Großbuchstaben können in drei Gruppen aufgeteilt werden:</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Die Zuordnungen von Klein- und Großbuchstaben können in drei Gruppen aufgeteilt werden:</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Bei den einfachen Abbildungen wird jedem Buchstaben nur ein einzelnes Zeichen zugeordnet, etwa <code>a</code> als Kleinbuchstabe zu <code>A</code></div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Bei den einfachen Abbildungen wird jedem Buchstaben nur ein einzelnes Zeichen zugeordnet, etwa <code>a</code> als Kleinbuchstabe zu <code>A</code></div></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* Bei den komplexen Abbildungen wird einem Buchstaben eine Zeichenkette aus mehreren Zeichen zugeordnet. So wird das <code>ß</code> beim Umwandeln in Großbuchstaben zu zwei Zeichen <code>SS</code>. Dies geschieht auch bei Umwandlungen von Buchstaben mit [[Diakritisches Zeichen|diakritischen Zeichen]], die<del style="font-weight: bold; text-decoration: none;"> nur</del> in einer Schreibweise kodiert wurden. Das kleine W mit übergesetztem Ring (ẘ, U+1E98) muss bei der Umwandlung in Großbuchstaben durch zwei Zeichen dargestellt werden: ein großes W und ein [[Kombinierendes Zeichen|kombinierender]] übergesetzter Ring.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* Bei den komplexen Abbildungen wird einem Buchstaben eine Zeichenkette aus mehreren Zeichen zugeordnet. So wird das <code>ß</code> beim Umwandeln in Großbuchstaben zu zwei Zeichen <code>SS</code>. Dies geschieht auch bei Umwandlungen von Buchstaben mit [[Diakritisches Zeichen|diakritischen Zeichen]], die in<ins style="font-weight: bold; text-decoration: none;"> nur</ins> einer Schreibweise kodiert wurden. Das kleine W mit übergesetztem Ring (ẘ, U+1E98) muss bei der Umwandlung in Großbuchstaben durch zwei Zeichen dargestellt werden: ein großes W und ein [[Kombinierendes Zeichen|kombinierender]] übergesetzter Ring.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Schließlich gibt es noch Umwandlungen, die von der Sprache oder von einem bestimmten Kontext abhängen. So wird das große griechische [[Sigma]] (Σ, U+03A3) bei der Umwandlung in Kleinschreibung zum gewöhnlichen kleinen Sigma (σ, U+03C3), außer es steht am Ende eines Wortes. In diesem Fall nimmt der Kleinbuchstabe die Schlussform (ς, U+03C2) an. Umfangreiche Regeln für verschiedene Sprachen stehen im [[Common Locale Data Repository]] zur Verfügung.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Schließlich gibt es noch Umwandlungen, die von der Sprache oder von einem bestimmten Kontext abhängen. So wird das große griechische [[Sigma]] (Σ, U+03A3) bei der Umwandlung in Kleinschreibung zum gewöhnlichen kleinen Sigma (σ, U+03C3), außer es steht am Ende eines Wortes. In diesem Fall nimmt der Kleinbuchstabe die Schlussform (ς, U+03C2) an. Umfangreiche Regeln für verschiedene Sprachen stehen im [[Common Locale Data Repository]] zur Verfügung.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
</table>194.25.30.14https://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=166970235&oldid=prev194.25.30.14 am 4. Juli 2017 um 10:59 Uhr2017-07-04T10:59:49Z<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 4. Juli 2017, 12:59 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 1:</td>
<td colspan="2" class="diff-lineno">Zeile 1:</td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Der [[Unicode]]-Standard beinhaltet verschiedene [[Algorithmus|Algorithmen]], die die Groß- und Kleinschreibung ({{EnS|''case''}}) betreffen, die '''Unicode-Casing-Algorithmen'''. Diese Algorithmen erlauben es Texte in eine andere Schreibweise zu überführen (etwa alle Buchstaben in Kleinbuchstaben verwandeln), festzustellen, ob ein Text in einer bestimmten Schreibweise vorliegt (beispielsweise vollständig in Großschreibung) und zwei Texte unabhängig von ihrer Schreibweise auf Gleichheit zu überprüfen. Die Algorithmen erlauben teilweise eine Anpassung an die verwendete Sprache. So ist in den meisten Sprachen der zum kleinen <code>i</code> gehörende Großbuchstabe das gewöhnliche große <code>I</code>, im Türkischen dagegen das große <code>İ</code> mit übergesetztem Punkt.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Der [[Unicode]]-Standard beinhaltet verschiedene [[Algorithmus|Algorithmen]], die die Groß- und Kleinschreibung ({{EnS|''case''}}) betreffen, die '''Unicode-Casing-Algorithmen'''. Diese Algorithmen erlauben es<ins style="font-weight: bold; text-decoration: none;">,</ins> Texte in eine andere Schreibweise zu überführen (etwa alle Buchstaben in Kleinbuchstaben verwandeln), festzustellen, ob ein Text in einer bestimmten Schreibweise vorliegt (beispielsweise vollständig in Großschreibung)<ins style="font-weight: bold; text-decoration: none;">,</ins> und zwei Texte unabhängig von ihrer Schreibweise auf Gleichheit zu überprüfen. Die Algorithmen erlauben teilweise eine Anpassung an die verwendete Sprache. So ist in den meisten Sprachen der zum kleinen <code>i</code> gehörende Großbuchstabe das gewöhnliche große <code>I</code>, im Türkischen dagegen das große <code>İ</code> mit übergesetztem Punkt.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Grundlagen ==</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Grundlagen ==</div></td>
</tr>
</table>194.25.30.14https://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=166905395&oldid=prev80.136.156.189: /* Feststellen der Schreibweise */ Tippfehler korrigiert2017-07-02T08:42:47Z<p><span class="autocomment">Feststellen der Schreibweise: </span> Tippfehler korrigiert</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 2. Juli 2017, 10:42 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 36:</td>
<td colspan="2" class="diff-lineno">Zeile 36:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Texte, die nur aus Zeichen bestehen, die wie Ziffern keine unterschiedliche Groß- oder Kleinschreibung besitzen, liegen nach dieser Definition in jeder Schreibweise vor. Um also zu überprüfen, ob ein Text vollständig in Kleinbuchstaben vorliegt, ist es sinnvoll, nicht nur zu prüfen, ob er sich nach dieser Definition in Kleinschreibung befindet. Zusätzlich sollte getestet werden, ob es eine Schreibweise gibt, die nicht zutrifft.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Texte, die nur aus Zeichen bestehen, die wie Ziffern keine unterschiedliche Groß- oder Kleinschreibung besitzen, liegen nach dieser Definition in jeder Schreibweise vor. Um also zu überprüfen, ob ein Text vollständig in Kleinbuchstaben vorliegt, ist es sinnvoll, nicht nur zu prüfen, ob er sich nach dieser Definition in Kleinschreibung befindet. Zusätzlich sollte getestet werden, ob es eine Schreibweise gibt, die nicht zutrifft.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>So liegen sowohl „UNICODE“ als auch „123“ in Großschreibung vor, nicht aber „Unicode“. Dies kann man entweder überprüfen, indem man die Umwandlungen vornimmt, oder indem man die <code>Changes_When_Uppercased</code>-Eigenschaft aller Zeichen betrachtet. Während bei den beiden ersten Zeichenketten diese für alle Zeichen falsch ist, hat die dritte Zeichenkette Buchstaben mit dieser Eigenschaft, nämlich das „n“ und alle folgenden. „UNICODE“ ist dabei eine echte Großschreibung, da das Wort nicht<del style="font-weight: bold; text-decoration: none;"> in</del> auch in Kleinschreibung vorliegt, diese wäre „unicode“. „123“ liegt dagegen in allen Schreibweisen vor, wie man durch die einzelnen Umwandlungen überprüfen kann, oder anhand der <code>Changes_When_Casemapped</code>-Eigenschaft. Diese gibt an, ob sich ein Zeichen bei irgendeiner Umwandlung ändert. Für die Ziffern ist sie also immer falsch, während sie bei lateinischen Buchstaben zutrifft.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>So liegen sowohl „UNICODE“ als auch „123“ in Großschreibung vor, nicht aber „Unicode“. Dies kann man entweder überprüfen, indem man die Umwandlungen vornimmt, oder indem man die <code>Changes_When_Uppercased</code>-Eigenschaft aller Zeichen betrachtet. Während bei den beiden ersten Zeichenketten diese für alle Zeichen falsch ist, hat die dritte Zeichenkette Buchstaben mit dieser Eigenschaft, nämlich das „n“ und alle folgenden. „UNICODE“ ist dabei eine echte Großschreibung, da das Wort nicht auch in Kleinschreibung vorliegt, diese wäre „unicode“. „123“ liegt dagegen in allen Schreibweisen vor, wie man durch die einzelnen Umwandlungen überprüfen kann, oder anhand der <code>Changes_When_Casemapped</code>-Eigenschaft. Diese gibt an, ob sich ein Zeichen bei irgendeiner Umwandlung ändert. Für die Ziffern ist sie also immer falsch, während sie bei lateinischen Buchstaben zutrifft.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Quellen ==</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Quellen ==</div></td>
</tr>
</table>80.136.156.189https://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=130549251&oldid=prevLektorat Cogito: /* Feststellen der Schreibweise */ Gr.2014-05-19T14:50:58Z<p><span class="autocomment">Feststellen der Schreibweise: </span> Gr.</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 19. Mai 2014, 16:50 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 32:</td>
<td colspan="2" class="diff-lineno">Zeile 32:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Feststellen der Schreibweise ==</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Feststellen der Schreibweise ==</div></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Um festzustellen, ob ein Text in einer bestimmten Schreibweise vorliegt, wird er in diese umgewandelt. Ändert er sich dabei nicht, so lag er bereits in dieser Schreibweise vor. Zur Vereinfachung steht zu jeder Schreibweise einschließlich <del style="font-weight: bold; text-decoration: none;">dem</del> ''casefold'' eine Eigenschaft zur Verfügung, die angibt, ob sich das Zeichen ändert oder nicht, sodass nur noch für 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 ändern würde.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Um festzustellen, ob ein Text in einer bestimmten Schreibweise vorliegt, wird er in diese umgewandelt. Ändert er sich dabei nicht, so lag er bereits in dieser Schreibweise vor. Zur Vereinfachung steht zu jeder Schreibweise einschließlich <ins style="font-weight: bold; text-decoration: none;">des</ins> ''casefold'' eine Eigenschaft zur Verfügung, die angibt, ob sich das Zeichen ändert oder nicht, sodass nur noch für 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 ändern würde.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Texte, die nur aus Zeichen bestehen, die wie Ziffern keine unterschiedliche Groß- oder Kleinschreibung besitzen, liegen nach dieser Definition in jeder Schreibweise vor. Um also zu überprüfen, ob ein Text vollständig in Kleinbuchstaben vorliegt, ist es sinnvoll, nicht nur zu prüfen, ob er sich nach dieser Definition in Kleinschreibung befindet. Zusätzlich sollte getestet werden, ob es eine Schreibweise gibt, die nicht zutrifft.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Texte, die nur aus Zeichen bestehen, die wie Ziffern keine unterschiedliche Groß- oder Kleinschreibung besitzen, liegen nach dieser Definition in jeder Schreibweise vor. Um also zu überprüfen, ob ein Text vollständig in Kleinbuchstaben vorliegt, ist es sinnvoll, nicht nur zu prüfen, ob er sich nach dieser Definition in Kleinschreibung befindet. Zusätzlich sollte getestet werden, ob es eine Schreibweise gibt, die nicht zutrifft.</div></td>
</tr>
</table>Lektorat Cogitohttps://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=128539598&oldid=prevMfb: Klammern korrigiert | Klammerfehler - Helfer gesucht2014-03-15T16:36:45Z<p>Klammern korrigiert | <a href="/wiki/Benutzer:Aka/Klammerfehler" class="mw-redirect" title="Benutzer:Aka/Klammerfehler">Klammerfehler - Helfer gesucht</a></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 15. März 2014, 18:36 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 8:</td>
<td colspan="2" class="diff-lineno">Zeile 8:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Die Zuordnungen von Klein- und Großbuchstaben können in drei Gruppen aufgeteilt werden:</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Die Zuordnungen von Klein- und Großbuchstaben können in drei Gruppen aufgeteilt werden:</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Bei den einfachen Abbildungen wird jedem Buchstaben nur ein einzelnes Zeichen zugeordnet, etwa <code>a</code> als Kleinbuchstabe zu <code>A</code></div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Bei den einfachen Abbildungen wird jedem Buchstaben nur ein einzelnes Zeichen zugeordnet, etwa <code>a</code> als Kleinbuchstabe zu <code>A</code></div></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* Bei den komplexen Abbildungen wird einem Buchstaben eine Zeichenkette aus mehreren Zeichen zugeordnet. So wird das <code>ß</code> beim Umwandeln in Großbuchstaben zu zwei Zeichen <code>SS</code>. Dies geschieht auch bei Umwandlungen von Buchstaben mit [[Diakritisches Zeichen|diakritischen Zeichen]], die nur in einer Schreibweise kodiert wurden. Das kleine W mit übergesetztem Ring (ẘ, U+1E98) muss bei der Umwandlung in Großbuchstaben durch zwei Zeichen dargestellt werden: ein großes W und ein [[Kombinierendes Zeichen|kombinierender]] übergesetzter Ring<del style="font-weight: bold; text-decoration: none;">)</del>.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* Bei den komplexen Abbildungen wird einem Buchstaben eine Zeichenkette aus mehreren Zeichen zugeordnet. So wird das <code>ß</code> beim Umwandeln in Großbuchstaben zu zwei Zeichen <code>SS</code>. Dies geschieht auch bei Umwandlungen von Buchstaben mit [[Diakritisches Zeichen|diakritischen Zeichen]], die nur in einer Schreibweise kodiert wurden. Das kleine W mit übergesetztem Ring (ẘ, U+1E98) muss bei der Umwandlung in Großbuchstaben durch zwei Zeichen dargestellt werden: ein großes W und ein [[Kombinierendes Zeichen|kombinierender]] übergesetzter Ring.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Schließlich gibt es noch Umwandlungen, die von der Sprache oder von einem bestimmten Kontext abhängen. So wird das große griechische [[Sigma]] (Σ, U+03A3) bei der Umwandlung in Kleinschreibung zum gewöhnlichen kleinen Sigma (σ, U+03C3), außer es steht am Ende eines Wortes. In diesem Fall nimmt der Kleinbuchstabe die Schlussform (ς, U+03C2) an. Umfangreiche Regeln für verschiedene Sprachen stehen im [[Common Locale Data Repository]] zur Verfügung.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Schließlich gibt es noch Umwandlungen, die von der Sprache oder von einem bestimmten Kontext abhängen. So wird das große griechische [[Sigma]] (Σ, U+03A3) bei der Umwandlung in Kleinschreibung zum gewöhnlichen kleinen Sigma (σ, U+03C3), außer es steht am Ende eines Wortes. In diesem Fall nimmt der Kleinbuchstabe die Schlussform (ς, U+03C2) an. Umfangreiche Regeln für verschiedene Sprachen stehen im [[Common Locale Data Repository]] zur Verfügung.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
</table>Mfbhttps://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=114189260&oldid=prev84.167.160.174: R2013-02-14T09:53:53Z<p>R</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="de">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 14. Februar 2013, 11:53 Uhr</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Zeile 25:</td>
<td colspan="2" class="diff-lineno">Zeile 25:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Um zwei Texte unabhängig von ihrer Schreibweise auf Gleichheit zu überprüfen, werden beide in eine spezielle [[Normalisierung (Text)|Normalform]] überführt. Diese ''casefold'' genannte Normalform basiert im Wesentlichen auf der Kleinschreibung. Auch hier werden alle Zeichen einzeln durch ihre <code>Case_Folding</code>-Entsprechung ersetzt.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Um zwei Texte unabhängig von ihrer Schreibweise auf Gleichheit zu überprüfen, werden beide in eine spezielle [[Normalisierung (Text)|Normalform]] überführt. Diese ''casefold'' genannte Normalform basiert im Wesentlichen auf der Kleinschreibung. Auch hier werden alle Zeichen einzeln durch ihre <code>Case_Folding</code>-Entsprechung ersetzt.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Anschließend sollten beide Texte in <del style="font-weight: bold; text-decoration: none;">die selbe</del> [[Normalisierung (Unicode)|Unicode-Normalform]] überführt werden, bevor sie verglichen werden. Tatsächlich ist es in einigen seltenen Fällen notwendig, die verschiedenen Normalisierungen mehrfach abwechselnd zu wiederholen.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Anschließend sollten beide Texte in <ins style="font-weight: bold; text-decoration: none;">dieselbe</ins> [[Normalisierung (Unicode)|Unicode-Normalform]] überführt werden, bevor sie verglichen werden. Tatsächlich ist es in einigen seltenen Fällen notwendig, die verschiedenen Normalisierungen mehrfach abwechselnd zu wiederholen.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Eine spezielle Variante ist für schreibweisen-unabhängige [[Bezeichner]] in Programmiersprachen gedacht: Hier werden zusätzlich alle Zeichen entfernt, die als <code>Default_Ignorable</code> gekennzeichnet sind (etwa [[Steuerzeichen in Unicode|Steuerzeichen zur Formatierung]]), und die Zeichenkette anschließend in die Normalform NFKC überführt. Zur Vereinfachung gibt es die Eigenschaft <code>NFKC_Casefold</code>, die eine einfache Umwandlung der einzelnen Zeichen erlaubt, sodass am Ende nur noch die Umordnung der kombinierenden Zeichen und die Überführung in die kombinierte Normalform separat erfolgen muss.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Eine spezielle Variante ist für schreibweisen-unabhängige [[Bezeichner]] in Programmiersprachen gedacht: Hier werden zusätzlich alle Zeichen entfernt, die als <code>Default_Ignorable</code> gekennzeichnet sind (etwa [[Steuerzeichen in Unicode|Steuerzeichen zur Formatierung]]), und die Zeichenkette anschließend in die Normalform NFKC überführt. Zur Vereinfachung gibt es die Eigenschaft <code>NFKC_Casefold</code>, die eine einfache Umwandlung der einzelnen Zeichen erlaubt, sodass am Ende nur noch die Umordnung der kombinierenden Zeichen und die Überführung in die kombinierte Normalform separat erfolgen muss.</div></td>
</tr>
<tr>
<td colspan="2" class="diff-lineno">Zeile 32:</td>
<td colspan="2" class="diff-lineno">Zeile 32:</td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Feststellen der Schreibweise ==</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Feststellen der Schreibweise ==</div></td>
</tr>
<tr>
<td class="diff-marker" data-marker="−"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Um festzustellen ob ein Text in einer bestimmten Schreibweise vorliegt, wird er in diese umgewandelt. Ändert er sich dabei nicht, so lag er bereits in dieser Schreibweise vor. Zur Vereinfachung steht zu jeder Schreibweise einschließlich dem ''casefold'' eine Eigenschaft zur Verfügung, die angibt, ob sich das Zeichen ändert oder nicht, sodass nur noch für 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 ändern würde.</div></td>
<td class="diff-marker" data-marker="+"></td>
<td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Um festzustellen<ins style="font-weight: bold; text-decoration: none;">,</ins> ob ein Text in einer bestimmten Schreibweise vorliegt, wird er in diese umgewandelt. Ändert er sich dabei nicht, so lag er bereits in dieser Schreibweise vor. Zur Vereinfachung steht zu jeder Schreibweise einschließlich dem ''casefold'' eine Eigenschaft zur Verfügung, die angibt, ob sich das Zeichen ändert oder nicht, sodass nur noch für 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 ändern würde.</div></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td>
</tr>
<tr>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Texte, die nur aus Zeichen bestehen, die wie Ziffern keine unterschiedliche Groß- oder Kleinschreibung besitzen, liegen nach dieser Definition in jeder Schreibweise vor. Um also zu überprüfen, ob ein Text vollständig in Kleinbuchstaben vorliegt, ist es sinnvoll, nicht nur zu prüfen, ob er sich nach dieser Definition in Kleinschreibung befindet. Zusätzlich sollte getestet werden, ob es eine Schreibweise gibt, die nicht zutrifft.</div></td>
<td class="diff-marker"></td>
<td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Texte, die nur aus Zeichen bestehen, die wie Ziffern keine unterschiedliche Groß- oder Kleinschreibung besitzen, liegen nach dieser Definition in jeder Schreibweise vor. Um also zu überprüfen, ob ein Text vollständig in Kleinbuchstaben vorliegt, ist es sinnvoll, nicht nur zu prüfen, ob er sich nach dieser Definition in Kleinschreibung befindet. Zusätzlich sollte getestet werden, ob es eine Schreibweise gibt, die nicht zutrifft.</div></td>
</tr>
</table>84.167.160.174https://de.wikipedia.org/w/index.php?title=Unicode-Casing-Algorithmus&diff=114145676&oldid=prevSchnark: AZ: Die Seite wurde neu angelegt: Der Unicode-Standard beinhaltet verschiedene Algorithmen, die die Groß- und Klein…2013-02-13T08:24:32Z<p><a href="/wiki/Hilfe:Zusammenfassung_und_Quellen#Auto-Zusammenfassung" title="Hilfe:Zusammenfassung und Quellen">AZ</a>: Die Seite wurde neu angelegt: Der <a href="/wiki/Unicode" title="Unicode">Unicode</a>-Standard beinhaltet verschiedene <a href="/wiki/Algorithmus" title="Algorithmus">Algorithmen</a>, die die Groß- und Klein…</p>
<p><b>Neue Seite</b></p><div>Der [[Unicode]]-Standard beinhaltet verschiedene [[Algorithmus|Algorithmen]], die die Groß- und Kleinschreibung ({{EnS|''case''}}) betreffen, die '''Unicode-Casing-Algorithmen'''. Diese Algorithmen erlauben es Texte in eine andere Schreibweise zu überführen (etwa alle Buchstaben in Kleinbuchstaben verwandeln), festzustellen, ob ein Text in einer bestimmten Schreibweise vorliegt (beispielsweise vollständig in Großschreibung) und zwei Texte unabhängig von ihrer Schreibweise auf Gleichheit zu überprüfen. Die Algorithmen erlauben teilweise eine Anpassung an die verwendete Sprache. So ist in den meisten Sprachen der zum kleinen <code>i</code> gehörende Großbuchstabe das gewöhnliche große <code>I</code>, im Türkischen dagegen das große <code>İ</code> mit übergesetztem Punkt.<br />
<br />
== Grundlagen ==<br />
Es gibt drei verschiedene Schreibweisen, die einen speziellen Namen haben: Die Kleinschreibung, bei der alle Buchstaben als [[Kleinbuchstabe]]n vorliegen, die Großschreibung, bei der alle Buchstaben als [[Großbuchstabe]]n vorliegen, und die Titelschreibung, bei der jeweils der erste Buchstabe eines Wortes ein Großbuchstabe ist, während die folgenden Buchstaben Kleinbuchstaben sind. Zudem gibt es die sogenannte ''Casefold''-Normalform.<br />
<br />
Zu jedem Unicode-Zeichen definiert der Unicode-Standard eine Reihe von [[Liste der Unicode-Eigenschaften|Eigenschaften]], die bei den Algorithmen verwendet werden. Diese Eigenschaften geben an, ob ein Zeichen ein Klein- oder ein Großbuchstabe ist, und welches gegebenenfalls der zugehörige Groß- oder Kleinbuchstabe ist.<br />
<br />
Die Zuordnungen von Klein- und Großbuchstaben können in drei Gruppen aufgeteilt werden:<br />
* Bei den einfachen Abbildungen wird jedem Buchstaben nur ein einzelnes Zeichen zugeordnet, etwa <code>a</code> als Kleinbuchstabe zu <code>A</code><br />
* Bei den komplexen Abbildungen wird einem Buchstaben eine Zeichenkette aus mehreren Zeichen zugeordnet. So wird das <code>ß</code> beim Umwandeln in Großbuchstaben zu zwei Zeichen <code>SS</code>. Dies geschieht auch bei Umwandlungen von Buchstaben mit [[Diakritisches Zeichen|diakritischen Zeichen]], die nur in einer Schreibweise kodiert wurden. Das kleine W mit übergesetztem Ring (ẘ, U+1E98) muss bei der Umwandlung in Großbuchstaben durch zwei Zeichen dargestellt werden: ein großes W und ein [[Kombinierendes Zeichen|kombinierender]] übergesetzter Ring).<br />
* Schließlich gibt es noch Umwandlungen, die von der Sprache oder von einem bestimmten Kontext abhängen. So wird das große griechische [[Sigma]] (Σ, U+03A3) bei der Umwandlung in Kleinschreibung zum gewöhnlichen kleinen Sigma (σ, U+03C3), außer es steht am Ende eines Wortes. In diesem Fall nimmt der Kleinbuchstabe die Schlussform (ς, U+03C2) an. Umfangreiche Regeln für verschiedene Sprachen stehen im [[Common Locale Data Repository]] zur Verfügung.<br />
<br />
== Änderung der Schreibweise ==<br />
Um einen Text in Kleinschreibung zu überführen, wird jedes Zeichen durch den zugehörigen 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 Großschreibung durchgeführt.<br />
<br />
Für die Umwandlung in Titelschreibung werden zunächst die Wortgrenzen gemäß dem entsprechenden [[Unicode-Segmentierungsalgorithmus]] bestimmt. Für jedes Wort wird das erste Zeichen ermittelt, das in unterschiedlichen Schreibweisen vorliegen kann und dieses durch die zugehörige Titelschreibung ersetzt. Die restlichen Zeichen bis zur nächsten Wortgrenze werden in Kleinbuchstaben umgewandelt.<br />
<br />
Mögliche Anpassungen dieses Algorithmus bestehen darin, andere Abbildungen für die einzelnen Zeichen zu verwenden, beispielsweise nur die einfachen Umwandlungen oder sprachspezifische Varianten. Auch könnte man das [[Großes ß|große ß]] als Großschreibung des „[[ß]]“ verwenden.<br />
<br />
Will man beispielsweise das Wort „Wikipedia“ in Großschreibung umwandeln, so ersetzt man einfach jeden Buchstaben durch den zugehörigen Großbuchstaben und erhält „WIKIPEDIA“. Überführt man dagegen das türkische Wort für Wikipedia „Vikipedi“ in Großschreibung, so sollte man die entsprechenden Abbildungen für Türkisch verwenden, die als Großbuchstabe zum „i“ das „İ“ (U+0130) angeben, sodass sich hier „VİKİPEDİ“ ergibt.<br />
<br />
Möchte man „ΚΌΣΜΟΣ“ in Kleinbuchstaben umwandeln, so steht das erste Sigma in der Wortmitte, wird als zu „σ“, während das zweite Sigma am Wortende steht und in ein „ς“ umgewandelt wird. Es ergibt sich also „κόσμος“.<br />
<br />
== Schreibweisen-unabhängiger Vergleich ==<br />
Um zwei Texte unabhängig von ihrer Schreibweise auf Gleichheit zu überprüfen, werden beide in eine spezielle [[Normalisierung (Text)|Normalform]] überführt. Diese ''casefold'' genannte Normalform basiert im Wesentlichen auf der Kleinschreibung. Auch hier werden alle Zeichen einzeln durch ihre <code>Case_Folding</code>-Entsprechung ersetzt.<br />
<br />
Anschließend sollten beide Texte in die selbe [[Normalisierung (Unicode)|Unicode-Normalform]] überführt werden, bevor sie verglichen werden. Tatsächlich ist es in einigen seltenen Fällen notwendig, die verschiedenen Normalisierungen mehrfach abwechselnd zu wiederholen.<br />
<br />
Eine spezielle Variante ist für schreibweisen-unabhängige [[Bezeichner]] in Programmiersprachen gedacht: Hier werden zusätzlich alle Zeichen entfernt, die als <code>Default_Ignorable</code> gekennzeichnet sind (etwa [[Steuerzeichen in Unicode|Steuerzeichen zur Formatierung]]), und die Zeichenkette anschließend in die Normalform NFKC überführt. Zur Vereinfachung gibt es die Eigenschaft <code>NFKC_Casefold</code>, die eine einfache Umwandlung der einzelnen Zeichen erlaubt, sodass am Ende nur noch die Umordnung der kombinierenden Zeichen und die Überführung in die kombinierte Normalform separat erfolgen muss.<br />
<br />
Will man beispielsweise prüfen, ob die beiden Wörter „MASSE“ und „Maße“ unabhängig von der Schreibweise übereinstimmen, so überführt man beide in die Casefold-Normalform, indem man für jeden Buchstaben die <code>Case_Folding</code>-Eigenschaft nachschlägt und die Buchstaben entsprechend ersetzt. Für das erste Wort ergibt sich „masse“, da alle Großbuchstaben durch Kleinbuchstaben ersetzt werden. Auch das zweite Wort wird zu „masse“ normalisiert, da für das ß die Normalisierung „ss“ angegeben ist. Die beiden Wörter stimmen also bis auf die Schreibweise überein.<br />
<br />
== Feststellen der Schreibweise ==<br />
Um festzustellen ob ein Text in einer bestimmten Schreibweise vorliegt, wird er in diese umgewandelt. Ändert er sich dabei nicht, so lag er bereits in dieser Schreibweise vor. Zur Vereinfachung steht zu jeder Schreibweise einschließlich dem ''casefold'' eine Eigenschaft zur Verfügung, die angibt, ob sich das Zeichen ändert oder nicht, sodass nur noch für 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 ändern würde.<br />
<br />
Texte, die nur aus Zeichen bestehen, die wie Ziffern keine unterschiedliche Groß- oder Kleinschreibung besitzen, liegen nach dieser Definition in jeder Schreibweise vor. Um also zu überprüfen, ob ein Text vollständig in Kleinbuchstaben vorliegt, ist es sinnvoll, nicht nur zu prüfen, ob er sich nach dieser Definition in Kleinschreibung befindet. Zusätzlich sollte getestet werden, ob es eine Schreibweise gibt, die nicht zutrifft.<br />
<br />
So liegen sowohl „UNICODE“ als auch „123“ in Großschreibung vor, nicht aber „Unicode“. Dies kann man entweder überprüfen, indem man die Umwandlungen vornimmt, oder indem man die <code>Changes_When_Uppercased</code>-Eigenschaft aller Zeichen betrachtet. Während bei den beiden ersten Zeichenketten diese für alle Zeichen falsch ist, hat die dritte Zeichenkette Buchstaben mit dieser Eigenschaft, nämlich das „n“ und alle folgenden. „UNICODE“ ist dabei eine echte Großschreibung, da das Wort nicht in auch in Kleinschreibung vorliegt, diese wäre „unicode“. „123“ liegt dagegen in allen Schreibweisen vor, wie man durch die einzelnen Umwandlungen überprüfen kann, oder anhand der <code>Changes_When_Casemapped</code>-Eigenschaft. Diese gibt an, ob sich ein Zeichen bei irgendeiner Umwandlung ändert. Für die Ziffern ist sie also immer falsch, während sie bei lateinischen Buchstaben zutrifft.<br />
<br />
== Quellen ==<br />
* Julie 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. ([http://www.unicode.org/versions/Unicode6.2.0/ online], PDF)<br />
<br />
== Weblinks ==<br />
* [http://unicode.org/cldr/utility/transform.jsp?a=Upper&show=on Demonstration] verschiedener Umwandlungen (englisch)<br />
<br />
[[Kategorie:Unicode|Casingalgorithmus]]<br />
[[Kategorie:Algorithmus]]</div>Schnark