Paket | flash.globalization |
Klasse | public final class Collator |
Vererbung | Collator Object |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Diese Klasse nutzt die Dienste für den Stringvergleich, die vom Betriebssystem bereitgestellt werden. Die Vergleiche unterscheiden sich je nach Gebietsschema-ID, die beim Erstellen der Klasseninstanz angegeben wird. ActionScript speichert Strings mithilfe des Unicode-Zeichensatzes. Die booleschen Stringvergleichsoperatoren (==, !=, <, <=, >, >=) verwenden Unicode-Codepoints für den Vergleich. In den meisten Fällen stimmt die resultierende Sortierreihenfolge nicht mit den Konventionen einer bestimmten Sprache und Region überein und sollte deshalb nicht zum Sortieren von Strings verwendet werden, die in einer Benutzeroberfläche dargestellt werden. Im Gegensatz dazu bieten die Vergleichsmethoden in dieser Klasse eine Reihenfolge, die diese Konventionen beachtet.
Dies sind einige Beispiele, bei denen die Sortierreihenfolge von der Sprache abhängig ist:
- Im Englischen steht das kleine a vor dem großen A; das große A steht vor dem kleinen b.
- Das Ö folgt im Schwedischen nach dem Z, während es im Deutschen nach dem O folgt.
- CH wird im traditionellen Spanisch als ein eigener Buchstabe zwischen C und D einsortiert.
Die Sortierreihenfolge kann je nach Verwendungszweck sogar innerhalb derselben Sprache und derselben Region variieren. In Deutschland gibt es zum Beispiel eine Sortierreihenfolge für die Namen in Telefonbüchern, die nicht mit der für Wörterbücher verwendeten übereinstimmt. Im Chinesischen und im Japanischen gibt es verschiedene Arten, die ideografischen Zeichen zu sortieren: nach Aussprache oder nach dem ideografischen Basiszeichen und der Anzahl der in der Glyphe verwendeten Striche. Im Spanischen und im Georgischen gibt es jeweils Unterschiede zwischen der modernen und der traditionellen Sortierung.
Die Vergleichsmethoden in dieser Klasse stellen zwei Hauptmodi bereit. Der initialMode
-Parameter des Collator()
-Konstruktors steuert diese Modi. Der Standardmodus „sorting“ dient zum Sortieren von Elementen, die dem Benutzer angezeigt werden. In diesem Modus sind Vergleiche strikter, um sicherzustellen, dass andernfalls identische Elemente auf konsistente Weise sortiert werden. Großbuchstaben und Kleinbuchstaben werden zum Beispiel nicht als gleich angesehen. Im Modus „matching“ ist der Vergleich weniger strikt. In diesem Modus werden Großbuchstaben und Kleinbuchstaben zum Beispiel gleich behandelt. Das folgende Beispiel zeigt die Unterschiede zwischen beiden Modi:
var sortingCollator:Collator = new Collator("en-US", CollatorMode.SORTING); var words:Array = new Array("Airplane" , "airplane", "boat", "Boat"); words.sort(sortingCollator.compare); trace(words); var matchingCollator:Collator = new Collator("en-US", CollatorMode.MATCHING); if (matchingCollator.equals("Car", "car")) { trace("The words match!"); }
Auch wenn dem Konstruktor wie im Beispiel oben eine Gebietsschema-ID als Parameter übergeben wird, kann das Sortierverhalten variieren. Dies ist von den Betriebssystemeinstellungen des Benutzers und von der eventuellen Verwendung eines Ersatzgebietsschema bei nicht unterstütztem angeforderten Gebietsschema abhängig.
Eigenschaft | Definiert von | ||
---|---|---|---|
actualLocaleIDName : String [schreibgeschützt]
Der Name der Gebietsschema-ID, die von diesem Collator-Objekt verwendet wird. | Collator | ||
constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | ||
ignoreCase : Boolean
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden identische Strings und Strings, die sich nur in der Groß- und Kleinschreibung der Buchstaben unterscheiden, als gleich bewertet. | Collator | ||
ignoreCharacterWidth : Boolean
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Formen voller Breite und halber Breite bei bestimmten chinesischen und japanischen Zeichen als gleich bewertet. | Collator | ||
ignoreDiacritics : Boolean
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Strings mit denselben Grundzeichen aber unterschiedlichen Akzenten oder anderen diakritischen Zeichen als gleich bewertet. | Collator | ||
ignoreKanaType : Boolean
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Strings, die sich nur durch die Art der verwendeten kana-Zeichen unterscheiden, als gleich bewertet. | Collator | ||
ignoreSymbols : Boolean
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Symbolzeichen wie Leerzeichen, Währungssymbole, mathematische Symbole und andere Arten von Symbolen beim Sortieren oder Überprüfen ignoriert. | Collator | ||
lastOperationStatus : String [schreibgeschützt]
Der Status der letzten Operation, die dieses Collator-Objekt ausgeführt hat. | Collator | ||
numericComparison : Boolean
Regelt, wie numerische Werte, die in Strings eingebettet sind, bei Stringvergleichen behandelt werden. | Collator | ||
requestedLocaleIDName : String [schreibgeschützt]
Der Name der angeforderten Gebietsschema-ID, der an den Konstruktor dieses Collator-Objekts übergeben wurde. | Collator |
Methode | Definiert von | ||
---|---|---|---|
Konstruiert ein neues Collator-Objekt, um Stringvergleiche entsprechend den Konventionen eines angegebenen Gebietsschemas bereitzustellen. | Collator | ||
Vergleicht zwei Strings und gibt einen Ganzzahlwert zurück, der angibt, ob der erste String kleiner, gleich oder größer als der zweite String ist. | Collator | ||
Vergleicht zwei Strings und gibt einen booleschen Wert zurück, der angibt, ob die Strings gleich sind. | Collator | ||
[statisch]
Listet alle Gebietsschema-ID-Namen auf, die von dieser Klasse unterstützt werden. | Collator | ||
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde. | Object | ||
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde. | Object | ||
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann. | Object | ||
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest. | Object | ||
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas. | Object | ||
Gibt das angegebene Objekt als String zurück. | Object | ||
Gibt den Grundwert des angegebenen Objekts zurück. | Object |
actualLocaleIDName | Eigenschaft |
actualLocaleIDName:String
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Der Name der Gebietsschema-ID, die von diesem Collator-Objekt verwendet wird.
Es drei Möglichkeiten für den Wert des Namens, abhängig vom Betriebssystem und dem Wert des requestedLocaleIDName
-Parameters, der an den Collator()
-Konstruktor übergeben wird.
- Wenn das angeforderte Gebietsschema nicht
LocaleID.DEFAULT
war und das Betriebssystem das angeforderten Gebietsschema unterstützt, ist der zurückgegebene Name identisch mit derrequestedLocaleIDName
-Eigenschaft. - Wenn
LocaleID.DEFAULT
als Wert für denrequestedLocaleIDName
-Parameter an den Konstruktor übergeben wurde, wird der Name des aktuellen Gebietsschemas verwendet, der vom Betriebssystem des Benutzers angegeben wird. DerLocaleID.DEFAULT
-Wert bewahrt die benutzerdefinierten Einstellungen im Betriebssystem. Mit der Übergabe eines expliziten Werts alsrequestedLocaleIDName
-Parameter wird nicht unbedingt dasselbe Ergebnis erzielt wie mit der Verwendung vonLocaleID.DEFAULT
, selbst wenn die beiden Gebietsschema-ID-Namen identisch sind. Der Benutzer hat die Gebietsschemaeinstellungen auf seinem Computer möglicherweise angepasst. Wenn Sie einen expliziten Gebietsschema-ID-Namen anfordern, anstattLocaleID.DEFAULT
zu verwenden, erhält Ihre Anwendung diese benutzerdefinierten Einstellungen nicht. - Wenn das System den im Konstruktor angegebenen
requestedLocaleIDName
nicht unterstützt, wird ein Ersatzgebietsschema bereitgestellt.
Implementierung
public function get actualLocaleIDName():String
Verwandte API-Elemente
ignoreCase | Eigenschaft |
ignoreCase:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden identische Strings und Strings, die sich nur in der Groß- und Kleinschreibung der Buchstaben unterscheiden, als gleich bewertet. Zum Beispiel gibt compare("ABC", "abc")
den Wert true
zurück, wenn die ignoreCase
-Eigenschaft den Wert true
hat.
Bei der Umwandlung von Groß- und Kleinbuchstaben werden die Regeln für das angegebene Gebietsschema beachtet.
Wenn die ignoreCase
-Eigenschaft den Wert „false“ hat, werden Groß- und Kleinbuchstaben nicht als gleich angesehen.
Wenn dieser Eigenschaft ein Wert zugewiesen ist und es keine Fehler oder Warnungen gibt, wird die lastOperationStatus
-Eigenschaft auf folgenden Wert gesetzt:
-
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus-Klasse definiert sind.
Der Standardwert ist true
, wenn für den zum Collator()
-Konstruktor gehörenden initialMode
-Parameter Collator.MATCHING
festgelegt ist. Der Standardwert ist false
, wenn für den zum Collator()
-Konstruktor gehörenden initialMode
-Parameter Collator.SORTING
festgelegt ist.
Implementierung
public function get ignoreCase():Boolean
public function set ignoreCase(value:Boolean):void
Verwandte API-Elemente
ignoreCharacterWidth | Eigenschaft |
ignoreCharacterWidth:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Formen voller Breite und halber Breite bei bestimmten chinesischen und japanischen Zeichen als gleich bewertet.
Für die Kompatibilität mit vorhandenen Standards für chinesische und japanische Zeichensätze stellt Unicode Zeichencodes sowohl für Zeichen voller Breite als auch halber Breite bereit. Wenn zum Beispiel die ignoreCharacterWidth
-Eigenschaft auf true
gesetzt ist, gibt compare("Aア", "Aア")
den Wert true
zurück.
Wenn die ignoreCharacterWidth
-Eigenschaft auf false
gesetzt ist, werden Zeichen voller Breite und halber Breite nicht als gleich angesehen.
Wenn dieser Eigenschaft ein Wert zugewiesen ist und es keine Fehler oder Warnungen gibt, wird die lastOperationStatus
-Eigenschaft auf folgenden Wert gesetzt:
-
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus-Klasse definiert sind.
Der Standardwert ist false.
Implementierung
public function get ignoreCharacterWidth():Boolean
public function set ignoreCharacterWidth(value:Boolean):void
Verwandte API-Elemente
ignoreDiacritics | Eigenschaft |
ignoreDiacritics:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Strings mit denselben Grundzeichen aber unterschiedlichen Akzenten oder anderen diakritischen Zeichen als gleich bewertet. Zum Beispiel gibt compare("coté", "côte")
den Wert true
zurück, wenn die ignoreDiacritics
-Eigenschaft den Wert true
hat.
Wenn die ignoreDiacritics
-Eigenschaft den Wert false
hat, werden Basiszeichen mit diakritischen Zeichen oder Akzenten nicht als gleich angesehen.
Wenn dieser Eigenschaft ein Wert zugewiesen ist und es keine Fehler oder Warnungen gibt, wird die lastOperationStatus
-Eigenschaft auf folgenden Wert gesetzt:
-
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus-Klasse definiert sind.
Der Standardwert ist false.
Implementierung
public function get ignoreDiacritics():Boolean
public function set ignoreDiacritics(value:Boolean):void
Verwandte API-Elemente
ignoreKanaType | Eigenschaft |
ignoreKanaType:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Strings, die sich nur durch die Art der verwendeten kana-Zeichen unterscheiden, als gleich bewertet. Zum Beispiel gibt compare("カナ", "かな")
den Wert true
zurück, wenn die ignoreKanaType
-Eigenschaft den Wert true
hat.
Wenn die ignoreKanaType
-Eigenschaft auf false
gesetzt ist, werden Hiragana- und Katakana-Zeichen, die sich auf dieselbe Silbe beziehen, nicht als gleich angesehen.
Wenn dieser Eigenschaft ein Wert zugewiesen ist und es keine Fehler oder Warnungen gibt, wird die lastOperationStatus
-Eigenschaft auf folgenden Wert gesetzt:
-
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus-Klasse definiert sind.
Der Standardwert ist false.
Implementierung
public function get ignoreKanaType():Boolean
public function set ignoreKanaType(value:Boolean):void
Verwandte API-Elemente
ignoreSymbols | Eigenschaft |
ignoreSymbols:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden Symbolzeichen wie Leerzeichen, Währungssymbole, mathematische Symbole und andere Arten von Symbolen beim Sortieren oder Überprüfen ignoriert. Zum Beispiel werden die Strings "OBrian", "O'Brian" und "O Brian" als gleich angesehen, wenn die ignoreSymbols
-Eigenschaft den Wert true
hat.
Wenn die ignoreSymbols
-Eigenschaft den Wert „false“ hat, werden Symbolzeichen bei Stringvergleichen berücksichtigt.
Wenn dieser Eigenschaft ein Wert zugewiesen ist und es keine Fehler oder Warnungen gibt, wird die lastOperationStatus
-Eigenschaft auf folgenden Wert gesetzt:
-
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus-Klasse definiert sind.
Der Standardwert ist false.
Implementierung
public function get ignoreSymbols():Boolean
public function set ignoreSymbols(value:Boolean):void
Verwandte API-Elemente
lastOperationStatus | Eigenschaft |
lastOperationStatus:String
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Der Status der letzten Operation, die dieses Collator-Objekt ausgeführt hat. Die lastOperationStatus
-Eigenschaft wird immer festgelegt, wenn der Konstruktor oder eine Methode dieser Klasse aufgerufen oder eine Eigenschaft festgelegt wird. Die möglichen Werte sind in der Beschreibung der einzelnen Methoden aufgeführt.
Implementierung
public function get lastOperationStatus():String
Verwandte API-Elemente
numericComparison | Eigenschaft |
numericComparison:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Regelt, wie numerische Werte, die in Strings eingebettet sind, bei Stringvergleichen behandelt werden.
Wenn die numericComparison
-Eigenschaft den Wert true
hat, konvertiert die Vergleichsmethode Zahlen, die im String vorkommen, zum Vergleich in numerische Werte.
Wenn diese Eigenschaft den Wert false
hat, behandelt der Vergleich Zahlen als Zeichencodes und sortiert sie entsprechend der Regeln zum Sortieren von Zeichen im angegebenen Gebietsschema.
Wenn diese Eigenschaft zum Beispiel für das Gebietsschema "en-US" den Wert „true“ hat, werden die Strings "version1", "version10" und "version2" in dieser Reihenfolge sortiert: version1 < version2 < version10.
Wenn diese Eigenschaft für das Gebietsschema "en-US" den Wert „false“ hat, werden dieselben Strings in dieser Reihenfolge sortiert: version1 < version10 < version2.
Wenn dieser Eigenschaft ein Wert zugewiesen ist und es keine Fehler oder Warnungen gibt, wird die lastOperationStatus
-Eigenschaft auf folgenden Wert gesetzt:
-
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus-Klasse definiert sind.
Der Standardwert ist false.
Implementierung
public function get numericComparison():Boolean
public function set numericComparison(value:Boolean):void
Verwandte API-Elemente
requestedLocaleIDName | Eigenschaft |
requestedLocaleIDName:String
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Der Name der angeforderten Gebietsschema-ID, der an den Konstruktor dieses Collator-Objekts übergeben wurde.
Wenn der Wert LocaleID.DEFAULT
verwendet wurde, lautet der zurückgegebene Name "i-default". Das tatsächlich verwendete Gebietsschema kann vom angeforderten Gebietsschema abweichen, wenn ein Ersatzgebietsschema verwendet wird. Der Name des tatsächlich verwendeten Gebietsschemas kann mit der actualLocaleIDName
-Eigenschaft abgerufen werden.
Implementierung
public function get requestedLocaleIDName():String
Verwandte API-Elemente
Collator | () | Konstruktor |
public function Collator(requestedLocaleIDName:String, initialMode:String = "sorting")
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Konstruiert ein neues Collator-Objekt, um Stringvergleiche entsprechend den Konventionen eines angegebenen Gebietsschemas bereitzustellen.
Wenn das aktuelle Betriebssystem die mit dem requestedLocaleIDName
-Parameter übergegebene Gebietsschema-ID nicht unterstützt, wird ein Ersatzgebietsschema bestimmt. Wenn eine Ausweichlösung verwendet wird, gibt die lastOperationStatus
-Eigenschaft den Typ der Ausweichlösung an.
Der initialMode
-Parameter legt verschiedene Sortieroptionen für allgemeine Zwecke fest. Er kann auf einen der folgenden Werte eingestellt sein:
CollatorMode.SORTING
: legt Sortieroptionen für allgemeine linguistische Sortiervorgänge fest, zum Beispiel für das Sortieren einer Liste mit Textstrings, die einem Endbenutzer angezeigt werden. In diesem Modus werden Unterschiede in der Groß- und Kleinschreibung, Zeichen mit Akzent und andere gebietsschemaspezifische Unterschiede bei Stringvergleichen berücksichtigt.CollatorMode.MATCHING
: legt Sortieroptionen für allgemeine Zwecke fest, zum Beispiel, um festzustellen, ob zwei Strings gleich sind. In diesem Modus werden Unterschiede in der Groß- und Kleinschreibung, Zeichen mit Akzent usw. bei Stringvergleichen nicht berücksichtigt.
Dies ist ein Beispiel für eine sortierte Liste, die mit einem Collator erstellt wurde, mit der Gebietsschema-ID „en-US“ (Englisch, USA) und der CollatorMode.SORTING
-Option:
Wie oben gezeigt, werden alle Zeichen als unterschiedlich behandelt, aber in linguistischer Reihenfolge.
Dies ist ein Beispiel für eine sortierte Liste, die mit einem Collator erstellt wurde, mit der Gebietsschema-ID „en-US“ (Englisch, USA) und der CollatorMode.MATCHING
-Option:
Wie oben gezeigt, stehen einige Zeichen in linguistisch korrekter Reihenfolge und werden wie gleiche Zeichenwerte behandelt.
Zur feineren Steuerung der Sortierreihenfolge können Sie Collator-Eigenschaften ändern, zum Beispiel Collator.ignoreCase
oder Collator.ignoreDiacritics
.
Zum Vergleich folgt ein entsprechendes Beispiel mit der Standardmethode Array.sort()
, die das Gebietsschema nicht beachtet:
Wie Sie oben sehen können, sind alle Zeichen einfach in der Reihenfolge ihrer numerischen Unicode-Werte sortiert. Sprachlich ist dies nicht sinnvoll.
Um die Einstellungen des aktuellen Betriebssystems des Benutzers zu verwenden, übergeben Sie den statischen Wert LocaleID.DEFAULT
im requestedLocaleIDName
-Parameter an den Konstruktor.
Für einige Gebietsschemas gibt es verschiedene Sortiervarianten. Im Deutschen werden zum Beispiel für Telefonbücher und Wörterbücher unterschiedliche Sortierreihenfolgen verwendet. Im Chinesischen werden Wörter normalerweise durch Transkriptionen der Zeichen in Pinyin unterstützt. Diese unterschiedlichen Sortierreihenfolgen lassen sich auswählen, indem das Schlüsselwort "collation" in den String eingefügt wird, der im requestedLocaleIDName
-Parameter an den Konstruktor übergeben wird.
var germanPhonebook:LocaleID = new LocaleID("de-DE@collation=phonebook"); var chinesePinyin:LocaleID = new LocaleID("zh-Hant@collation=pinyin");
Mögliche Werte für den collation-String sind nachstehend aufgeführt, mit der betroffenen Sprache in Klammern:
Wenn die Hostplattform den angeforderten Sortiertyp nicht unterstützt, wird eine Ausweichlösung verwendet und die lastOperationStatus
-Eigenschaft gibt an, dass ein Ersatz ausgewählt wurde. Mit der actualLocaleIDName
-Eigenschaft können Sie feststellen, welcher Wert als Ersatz verwendet wurde, wie im folgenden Beispiel gezeigt:
var collator:Collator = new Collator("fr-FR"); if (collator.lastOperationStatus == LastOperationStatus.USING_FALLBACK_WARNING) { trace ("Using fallback locale: " + collator.actualLocaleIDName); }
Wenn der Konstruktor erfolgreich abgeschlossen wird, wird die lastOperationStatus
-Eigenschaft auf diesen Wert gesetzt:
-
LastOperationStatus.NO_ERROR
Wenn die angeforderte Gebietsschema-ID nicht verfügbar ist, hat die lastOperationStatus
-Eigenschaft einen der folgenden Werte:
LastOperationStatus.USING_FALLBACK_WARNING
LastOperationStatus.USING_DEFAULT_WARNING
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus-Klasse definiert sind.
Details zu den oben aufgeführten Warnungen und zu anderen möglichen Werten der lastOperationStatus
-Eigenschaft finden Sie im Abschnitt zur LastOperationStatus
-Klasse.
requestedLocaleIDName:String — String , der von diesem Collator-Objekt verwendet werden soll.
| |
initialMode:String (default = "sorting ") — Ein Stringwert, der den anfänglichen Sortiermodus angibt. Der Standardwert lautet CollatorMode.SORTING . Eine Liste der verfügbaren Modi finden Sie in der Beschreibung der CollatorMode-Klasse.
|
Auslöser
TypeError — wenn der requestedLocaleIDName -Parameter den Wert null hat.
| |
ArgumentError — wenn der requestedLocaleIDName -Parameter einen ungültigen Wert enthält.
|
Verwandte API-Elemente
compare | () | Methode |
public function compare(string1:String, string2:String):int
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Vergleicht zwei Strings und gibt einen Ganzzahlwert zurück, der angibt, ob der erste String kleiner, gleich oder größer als der zweite String ist. Der Vergleich verwendet die Sortierregeln für die Gebietsschema-ID, die im Collator()
-Konstruktor angegeben wurde.
Wenn diese Methode aufgerufen und erfolgreich abgeschlossen wird, wird die lastOperationStatus
-Eigenschaft folgendermaßen festgelegt:
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus
-Klasse definiert sind.
Parameter
string1:String — Erster Vergleichsstring.
| |
string2:String — Zweiter Vergleichsstring.
|
int — Ein Ganzzahlwert, der angibt, ob der erste String kleiner, gleich oder größer als der zweite String ist.
|
Auslöser
TypeError — wenn ein erforderlicher Parameter null ist.
| |
ArgumentError — wenn ein Parameter einen ungültigen Wert enthält.
|
Verwandte API-Elemente
equals | () | Methode |
public function equals(string1:String, string2:String):Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Vergleicht zwei Strings und gibt einen booleschen Wert zurück, der angibt, ob die Strings gleich sind. Der Vergleich verwendet die Sortierregeln für die Gebietsschema-ID, die im Collator()
-Konstruktor angegeben wurde.
Wenn diese Methode aufgerufen und erfolgreich abgeschlossen wird, wird die lastOperationStatus
-Eigenschaft folgendermaßen festgelegt:
LastOperationStatus.NO_ERROR
Andernfalls wird die lastOperationStatus
-Eigenschaft auf eine der Konstanten eingestellt, die in der LastOperationStatus
-Klasse definiert sind.
Parameter
string1:String — Erster Vergleichsstring.
| |
string2:String — Zweiter Vergleichsstring.
|
Boolean — Ein boolescher Wert, der angibt, ob die Strings gleich sind (true ) oder ungleich sind (false ).
|
Auslöser
TypeError — wenn ein erforderlicher Parameter null ist.
| |
ArgumentError — wenn ein Parameter einen ungültigen Wert enthält.
|
Verwandte API-Elemente
getAvailableLocaleIDNames | () | Methode |
public static function getAvailableLocaleIDNames():Vector.<String>
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2 |
Listet alle Gebietsschema-ID-Namen auf, die von dieser Klasse unterstützt werden.
Wenn diese Klasse vom aktuellen Betriebssystem gar nicht unterstützt wird, gibt diese Methode einen Null-Wert zurück.
RückgabewerteVector.<String> — Ein Vektor von Strings, der alle von dieser Klasse unterstützten Gebietsschema-ID-Namen enthält.
|
- Durchläuft ein Array von Gebietsschema-ID-Namen einschließlich der Standardgebietsschema-ID für das Betriebssystem (wie von
LocaleID.DEFAULT
definiert) - Erstellt ein Collator-Objekt für jeden Gebietsschema-ID-Namen unter Verwendung des Modus „sorting“ (Standardeinstellung).
- Zeigt die Namen der angeforderten und tatsächlichen Gebietsschema-IDs an sowie den Wert der
lastOperationStatus
-Eigenschaft, sodass Sie sehen können, ob ein Ersatzgebietsschema verwendet wurde. - Sortiert ein Datenarray unter Verwendung jedes Collators und zeigt die Ergebnisse an. Die resultierende Sortierung sieht für jedes Gebietsschema anders aus.
package { import flash.globalization.Collator; import flash.globalization.LocaleID; public class CollatorExample1 { public var col:Collator; public function CollatorExample1():void { var localeNames:Array = [LocaleID.DEFAULT, "de-DE", "sv-SE", "fr-FR", "lt-LT", "es-ES"]; var testSortData:Array = [ "y ", "i ", "k ", // Latvian "acxa ", "acha ", "adxa ", // es_traditional "n ", "ö ", "o ", "z ", "vu ", "wo ", // sw "däd ", "daed ", // de "öf ", "of ", // de_dictionary "côte ", "coté " // fr ]; for each (var localeName:String in localeNames) { col = new Collator(localeName); trace("LocaleID requested: " + col.requestedLocaleIDName + "; actual: " + col.actualLocaleIDName); trace("Last Operation Status: " + col.lastOperationStatus ); var result:Array = testSortData.sort(col.compare); trace ("sorted data: " + result); } } } }
- Erstellt ein Collator-Objekt für das Standardgebietsschema des Benutzers unter Verwendung des Modus „matching“.
- Setzt die
Collator.ignoreDiacritics
-Eigenschaft abwechselnd auffalse
undtrue
- Vergleicht Sätze von Strings, die diakritische Zeichen sowie Groß- und Kleinbuchstaben enthalten.
- Zeigt, wie sich die Vergleiche ändern, wenn sich die Eigenschaften
Collator.ignoreDiacritics
undCollator.ignoreCase
ändern.
package { import flash.display.Sprite; import flash.globalization.Collator; import flash.globalization.CollatorMode; import flash.globalization.LocaleID; public class CollatorExample2 extends Sprite { public var col:Collator; public var testMatchData:Array = ["cote", "Cote", "côte", "coté"]; public var wordToMatch:String = "Cote"; public function CollatorExample2() { col = new Collator( LocaleID.DEFAULT, CollatorMode.MATCHING ); trace("LocaleID requested: " + col.requestedLocaleIDName + "; actual: " + col.actualLocaleIDName); trace("Last Operation Status: " + col.lastOperationStatus ); trace('\n' + "ignoreCase = " + col.ignoreCase); trace("ignoreDiacritics = " + col.ignoreDiacritics); compareString(testMatchData, wordToMatch) // All variations of the word cote match col.ignoreDiacritics = false; trace('\n' + "ignoreDiacritics = false"); compareString(testMatchData, wordToMatch) // Variations with different diacritics will not match col.ignoreCase = false; trace('\n' + "ignoreCase = false"); compareString(testMatchData, wordToMatch) // Variations with different case will not match } private function compareString(stringArray:Array, keyword:String):void { for each(var s:String in stringArray) { if(col.equals(s, keyword)) { trace(keyword + " = " + s); } } } } }
Tue Jun 12 2018, 10:04 AM Z