Pakiet | flash.globalization |
Klasa | public final class Collator |
Dziedziczenie | Collator Object |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Ta klasa wykorzystuje funkcje porównywania ciągów znaków, które udostępnia system operacyjny. Porównania różnią się w zależności od identyfikatora ustawień narodowych, które są dostępne podczas tworzenia instancji klasy. W języku ActionScript ciągi znaków są zapisywane w zestawie znaków Unicode. Logiczne operatory porównywania ciągów znaków (==, !=, <, <=, >, >=) wykorzystują punkty kodu Unicode w celu porównywania. W większości przypadków wynikowa kolejność sortowania nie jest zgodna z konwencjami określonego języka lub regionu i dlatego nie powinna być używana w celu sortowania ciągów znaków, które są prezentowane w interfejsie użytkownika. Metody porównywania dostępne w tej klasie zapewniają kolejność sortowania zgodną z tymi konwencjami.
Oto przykłady sytuacji, w których kolejność sortowania różni się w zależności od języka:
- W języku angielskim mała litera a znajduje się przed wielką literą A, a wielka litera A poprzedza małą literę b.
- ö znajduje się za z w języku szwedzkim, a w języku niemieckim ö znajduje się za o
- ch jest umieszczane jako jeden znak między c-d w tradycyjnym hiszpańskim
Kolejności sortowania mogą się nawet różnić dla danego języka i regionu — w zależności od użycia. Na przykład: w języku niemieckim istnieje inna kolejność sortowania dla nazw w książce telefonicznej, a inna w słowniku. W językach chińskim i japońskim istnieją różne sposoby sortowania znaków ideograficznych: wg wymowy lub wg głównych znaków ideograficznych i liczby pociągnięć pędzla użytych w glifie. W języku hiszpańskim i gruzińskim istnieje różnica między sortowaniem współczesnym i tradycyjnym.
Metody porównawcze w tej klasie udostępniają dwa główne tryby użycia. Parametr initialMode
konstruktora Collator()
umożliwia sterowanie tymi trybami. Domyślny tryb „sortowania” jest przeznaczony dla elementów, które mają być wyświetlane dla użytkownika końcowego. W tym trybie porównywanie jest bardziej dokładne, aby zapewnić, że elementy, które różnią się tylko pod jednym względem będą sortowane w jednakowy sposób. Na przykład małe i wielkie litery są traktowane jako różne. W trybie „zgodności” porównywanie przebiega bardziej tolerancyjnie. Na przykład w tym trybie litery małe i wielkie są traktowane jednakowo. Oto przykład, który demonstruje działanie obydwu tych trybów:
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!"); }
Nawet jeśli — jak powyżej — konstruktor otrzyma parametr identyfikatora ustawień narodowych, działanie porządkowania może się różnić dla różnych użytkowników w zależności od ustawień systemu operacyjnego oraz od tego, czy używane są alternatywne ustawienia narodowe, gdy żądane ustawienia nie są dostępne.
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
actualLocaleIDName : String [tylko do odczytu]
Nazwa bieżącego identyfikatora ustawień narodowych używanych przez dany obiekt klasy Collator. | Collator | ||
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
ignoreCase : Boolean
Jeśli dla tej właściwości ustawiono wartość true, wówczas identyczne ciągi znaków i ciągi znaków, które różnią się tylko wielkościami znaków, będą traktowane jako równe. | Collator | ||
ignoreCharacterWidth : Boolean
Jeśli ta właściwość ma wartość true, wówczas formy niektórych znaków chińskich i japońskich o pełnej i połówkowej szerokości będą traktowane jako równe. | Collator | ||
ignoreDiacritics : Boolean
Jeśli dla tej właściwości ustawiono wartość true, ciągi znaków, które wykorzystują te same znaki podstawowe, ale różne akcenty lub inne znaki diakrytyczne, będą traktowane jako równe. | Collator | ||
ignoreKanaType : Boolean
Jeśli dla tej właściwości ustawiona jest wartość true, wówczas ciągi znaków, które różnią się tylko typem używanego znaku kana, będą traktowane jako równe. | Collator | ||
ignoreSymbols : Boolean
Jeśli dla tej właściwości ustawiona jest wartość true, wówczas podczas sortowania lub uzgadniania znaki, takie jak spacje, symbole walut, symbole matematyczne i inne typy symboli, będą ignorowane. | Collator | ||
lastOperationStatus : String [tylko do odczytu]
Status ostatniej operacji wykonanej przez ten obiekt Collator. | Collator | ||
numericComparison : Boolean
Kontroluje, w jaki sposób podczas porównywania ciągów znaków będą traktowane wartości liczbowe osadzone w ciągach znaków. | Collator | ||
requestedLocaleIDName : String [tylko do odczytu]
Nazwa identyfikatora żądanych ustawień narodowych, która została przekazana do konstruktora obiektu klasy Collator. | Collator |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
Tworzy nowy obiekt klasy Collator w celu zapewnienia porównywania ciągów znaków zgodnie z konwencjami określonych ustawień regionalnych. | Collator | ||
Porównuje dwa ciągi znaków i zwraca wartość całkowitą, która wskazuje, czy pierwszy ciąg znaków jest krótszy, równy, czy dłuższy od drugiego ciągu znaków. | Collator | ||
Porównuje dwa ciągi znaków i zwraca wartość logiczną, która określa, czy ciągi są równe. | Collator | ||
[statyczny]
Wyświetla listę identyfikatorów ustawień regionalnych obsługiwanych przez tę klasę. | Collator | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
Zwraca ciąg reprezentujący określony obiekt. | Object | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object |
actualLocaleIDName | właściwość |
actualLocaleIDName:String
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Nazwa bieżącego identyfikatora ustawień regionalnych używanych przez dany obiekt klasy Collator.
Istnieją trzy możliwości dla wartości nazwy — w zależności od systemu operacyjnego i wartości parametru requestedLocaleIDName
przekazywanego do konstruktora Collator()
.
- Jeśli zażądano innych ustawień narodowych niż
LocaleID.DEFAULT
, a system operacyjny zapewnia obsługę dla żądanych ustawień, wówczas zwrócona nazwa będzie taka sama, jak właściwośćrequestedLocaleIDName
. - Jeśli wartością parametru
requestedLocaleIDName
przekazanego do konstruktora byłoLocaleID.DEFAULT
, wówczas używana będzie nazwa bieżących ustawień narodowych określonych przez system operacyjny użytkownika. WartośćLocaleID.DEFAULT
powoduje zachowanie niestandardowych ustawień użytkownika w systemie operacyjnym. Przekazanie wartości jawnej jako parametrurequestedLocaleIDName
nie spowoduje uzyskania takiego samego rezultatu, jak użycieLocaleID.DEFAULT
, nawet jeśli obydwa identyfikatory ustawień narodowych są takie same. Możliwe, że użytkownik dostosował ustawienia narodowe na własnym komputerze, a żądanie jawnego identyfikatora ustawień narodowych — zamiastLocaleID.DEFAULT
— sprawi, że aplikacja nie odczyta tych niestandardowych ustawień. - Jeśli system nie obsługuje parametru
requestedLocaleIDName
określonego w konstruktorze, wówczas zostanie udostępniony identyfikator alternatywnych ustawień narodowych.
Implementacja
public function get actualLocaleIDName():String
Powiązane elementy interfejsu API
ignoreCase | właściwość |
ignoreCase:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Jeśli dla tej właściwości ustawiono wartość true, wówczas identyczne ciągi znaków i ciągi znaków, które różnią się tylko wielkościami znaków, będą traktowane jako równe. Na przykład: compare("ABC", "abc")
zwróci true
, jeśli właściwość ignoreCase
zostanie ustawiona na true
.
Przekształcanie wielkości znaków w ciągach znaków będzie zgodne z regułami dla określonych ustawień narodowych.
Jeśli właściwość ignoreCase
ma wartość false, wówczas wielkie i małe znaki nie będą równe.
Jeśli do tej właściwości zostanie przypisana wartość i nie wystąpiły żadne błędy ani ostrzeżenia, wówczas właściwość lastOperationStatus
zostaje ustawiona na:
-
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus.
Wartość domyślna wynosi true
, gdy w konstruktorze Collator()
parametr initialMode
jest ustawiony na wartość Collator.MATCHING
. Wartość domyślna wynosi false
, gdy w konstruktorze Collator()
parametr initialMode
jest ustawiony na wartość Collator.SORTING
.
Implementacja
public function get ignoreCase():Boolean
public function set ignoreCase(value:Boolean):void
Powiązane elementy interfejsu API
ignoreCharacterWidth | właściwość |
ignoreCharacterWidth:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Jeśli ta właściwość ma wartość true, wówczas formy niektórych znaków chińskich i japońskich o pełnej i połówkowej szerokości będą traktowane jako równe.
W celu zapewnienia zgodności z istniejącymi standardami dla zestawów znaków języków chińskiego i japońskiego Unicode udostępnia kody znaków dla form o pełnej i połówkowej szerokości niektórych znaków. Na przykład: gdy właściwość ignoreCharacterWidth
jest ustawiona na true
, wówczas compare("Aア", "Aア")
zwróci true
.
Jeśli właściwość ignoreCharacterWidth
jest ustawiona na false
, wówczas formy o pełnej i połówkowej szerokości nie będą traktowane jako równe.
Jeśli do tej właściwości zostanie przypisana wartość i nie wystąpiły żadne błędy ani ostrzeżenia, wówczas właściwość lastOperationStatus
zostaje ustawiona na:
-
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus.
Wartością domyślną jest false.
Implementacja
public function get ignoreCharacterWidth():Boolean
public function set ignoreCharacterWidth(value:Boolean):void
Powiązane elementy interfejsu API
ignoreDiacritics | właściwość |
ignoreDiacritics:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Jeśli dla tej właściwości ustawiono wartość true, ciągi znaków, które wykorzystują te same znaki podstawowe, ale różne akcenty lub inne znaki diakrytyczne, będą traktowane jako równe. Na przykład: compare("coté", "côte")
zwróci true
, jeśli właściwość ignoreDiacritics
jest ustawiona na true
.
Jeśli właściwość ignoreDiacritics
jest ustawiona na false
, wówczas znaki podstawowe ze znakami diakrytycznymi lub akcentami nie będą traktowane jako równe.
Jeśli do tej właściwości zostanie przypisana wartość i nie wystąpiły żadne błędy ani ostrzeżenia, wówczas właściwość lastOperationStatus
zostaje ustawiona na:
-
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus.
Wartością domyślną jest false.
Implementacja
public function get ignoreDiacritics():Boolean
public function set ignoreDiacritics(value:Boolean):void
Powiązane elementy interfejsu API
ignoreKanaType | właściwość |
ignoreKanaType:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Jeśli dla tej właściwości ustawiona jest wartość true, wówczas ciągi znaków, które różnią się tylko typem używanego znaku kana, będą traktowane jako równe. Na przykład wywołanie compare("カナ", "かな")
zwróci true
, gdy właściwość ignoreKanaType
jest ustawiona na true
.
Jeśli właściwość ignoreKanaType
jest ustawiona na false
, wówczas znaki hiragana i katakana, które odwołują się do tej samej sylaby nie będą sobie równe.
Jeśli do tej właściwości zostanie przypisana wartość i nie wystąpiły żadne błędy ani ostrzeżenia, wówczas właściwość lastOperationStatus
zostaje ustawiona na:
-
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus.
Wartością domyślną jest false.
Implementacja
public function get ignoreKanaType():Boolean
public function set ignoreKanaType(value:Boolean):void
Powiązane elementy interfejsu API
ignoreSymbols | właściwość |
ignoreSymbols:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Jeśli dla tej właściwości ustawiona jest wartość true, wówczas podczas sortowania lub dopasowywania niektóre znaki, takie jak spacje, symbole walut, symbole matematyczne i inne typy symboli, będą ignorowane. Na przykład: ciągi znaków „OBrian”, „O'Brian” i „O Brian” będą traktowane jako równe, jeśli dla właściwości ignoreSymbols
ustawiona jest wartość true
.
Jeśli właściwość ignoreSymbols
ma wartość false, wówczas znaki symboli będą uwzględniane podczas porównywania ciągów znaków.
Jeśli do tej właściwości zostanie przypisana wartość i nie wystąpiły żadne błędy ani ostrzeżenia, wówczas właściwość lastOperationStatus
zostaje ustawiona na:
-
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus.
Wartością domyślną jest false.
Implementacja
public function get ignoreSymbols():Boolean
public function set ignoreSymbols(value:Boolean):void
Powiązane elementy interfejsu API
lastOperationStatus | właściwość |
lastOperationStatus:String
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Status ostatniej operacji wykonanej przez ten obiekt Collator. Status lastOperationStatus
zostanie ustawiony przy każdej okazji wywołania konstruktora lub metody klasy lub w przypadku ustawienia właściwości. Możliwe wartości przedstawiają opisy poszczególnych metod.
Implementacja
public function get lastOperationStatus():String
Powiązane elementy interfejsu API
numericComparison | właściwość |
numericComparison:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Kontroluje, w jaki sposób podczas porównywania ciągów znaków będą traktowane wartości liczbowe osadzone w ciągach znaków.
Jeśli właściwość numericComparison
jest ustawiona na true
, metoda compare będzie przekształcać liczby, które pojawiają się w ciągach znaków na wartości liczbowe w celu porównania.
Jeśli ta właściwość jest ustawiona na false
, wówczas podczas porównywania liczby będą traktowane jako kody znaków i będą sortowane zgodnie z regułami sortowania znaków, jakie obowiązują w określonych ustawieniach narodowych.
Na przykład: jeśli dla tej właściwości ustawiona jest wartość true dla ustawień narodowych „en-US”, wówczas ciągi znaków „version1”, „version10” i „version2” będą sortowane w następującej kolejności: version1 < version2 < version10.
Jeśli właściwość ma wartość false dla ustawień narodowych „en-US”, wówczas te ciągi znaków będą sortowane w następującej kolejności: version1 < version10 < version2.
Jeśli do tej właściwości zostanie przypisana wartość i nie wystąpiły żadne błędy ani ostrzeżenia, wówczas właściwość lastOperationStatus
zostaje ustawiona na:
-
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus.
Wartością domyślną jest false.
Implementacja
public function get numericComparison():Boolean
public function set numericComparison(value:Boolean):void
Powiązane elementy interfejsu API
requestedLocaleIDName | właściwość |
requestedLocaleIDName:String
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Nazwa identyfikatora żądanych ustawień regionalnych, która została przekazana do konstruktora obiektu klasy Collator.
Jeśli użyto wartości LocaleID.DEFAULT
, wówczas zwrócona zostanie nazwa „i-default”. W przypadku zastosowania awaryjnych ustawień narodowych rzeczywiste ustawienia mogą się różnić od żądanych ustawień narodowych. Nazwę rzeczywistych ustawień narodowych można uzyskać za pomocą właściwości actualLocaleIDName
.
Implementacja
public function get requestedLocaleIDName():String
Powiązane elementy interfejsu API
Collator | () | Konstruktor |
public function Collator(requestedLocaleIDName:String, initialMode:String = "sorting")
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Tworzy nowy obiekt klasy Collator w celu zapewnienia porównywania ciągów znaków zgodnie z konwencjami określonych ustawień narodowych.
Jeśli bieżący system operacyjny nie obsługuje identyfikatora ustawień narodowych, który został przekazany w parametrze requestedLocaleIDName
, wówczas zostaną określone alternatywne ustawienia narodowe. Jeśli używane są ustawienia alternatywne, wówczas właściwość lastOperationStatus
zostanie ustawiona w taki sposób, aby wskazywała typ ustawień alternatywnych.
Parametr initialMode
ustawia różne opcje porządkowania do zastosowań ogólnych. Może przyjąć jedną z następujących wartości:
CollatorMode.SORTING
: ustawia opcje porządkowania dla ogólnych zastosowań sortowania lingwistycznego, takich jak sortowanie listy ciągów znaków, które zostaną wyświetlone dla użytkownika końcowego. Jeśli w tym trybie wykonywane będzie porównywanie ciągów znaków, wówczas będą uwzględniane różnice w postaci małych i wielkich liter, znaki akcentowane oraz inne różnice właściwe dla konkretnych ustawień narodowych.CollatorMode.MATCHING
: ustawia opcje porządkowania dla ogólnych zastosowań, takich jak określenie, czy dwa ciągi znaków są równoważne. W tym trybie różnice między małymi i wielkimi literami, znakami akcentowanymi itp. będą ignorowane w czasie porównywania ciągów znaków.
Poniżej przedstawiono przykład sortowanej listy utworzonej za pomocą obiektu klasy Collator z ustawieniami narodowymi „en-US” (angielski w USA) oraz z wykorzystaniem opcji CollatorMode.SORTING
:
Wszystkie znaki są traktowane w taki sposób, jakby miały inne wartości, ale w kolejności lingwistycznej.
Poniżej przedstawiono przykład sortowanej listy utworzonej za pomocą obiektu klasy Collator z ustawieniami narodowymi „en-US” (angielski w USA) oraz z wykorzystaniem opcji CollatorMode.MATCHING
:
Powyżej przedstawiono, że niektóre znaki są w kolejności lingwistycznej i są traktowane w taki sposób, jakby miały tę samą wartość znaku.
W celu zapewnienia dokładniejszej kontroli kolejności sortowania można zmienić właściwości obiektu klasy Collator, takie jak Collator.ignoreCase
i Collator.ignoreDiacritics
.
W celu porównania przedstawiono przykładowe sortowanie z wykorzystaniem standardowego sortowania Array.sort()
, w którym ustawienia narodowe nie są uwzględniane:
Wszystkie znaki są sortowane zgodnie z wartością liczbową kodu Unicode. Takie sortowanie nie ma znaczenia lingwistycznego.
W celu wykorzystania preferencji użytkownika dotyczące bieżącego systemu operacyjnego należy przekazać do konstruktora wartość LocaleID.DEFAULT
w parametrze requestedLocaleIDName
.
W niektórych ustawieniach narodowych istnieje kilka wariantów kolejności sortowania. Na przykład w języku niemieckim kolejność sortowania używana w przypadku książek telefonicznych jest inna od kolejności wykorzystywanej w słownikach. W języku chińskim słowom zwykle towarzyszy transliteracja znaków na pinyin. Różne kolejności sortowania można wybierać poprzez dołączanie słowa kluczowego „collation” do ciągu znaków przekazywanego w parametrze requestedLocaleIDName
do konstruktora.
var germanPhonebook:LocaleID = new LocaleID("de-DE@collation=phonebook"); var chinesePinyin:LocaleID = new LocaleID("zh-Hant@collation=pinyin");
Poniżej przedstawiono możliwe wartości ciągu znaków kolejności sortowania. Języki, na które ma wpływ dana wartość, podano w nawiasach:
Jeśli platforma nie obsługuje żądanego typu porządkowania, wówczas będzie używane porządkowanie alternatywne, a właściwość lastOperationStatus
zostanie ustawiona w taki sposób, aby wskazywała wybraną opcję alternatywną. Właściwości actualLocaleIDName
można użyć do określenia wartości, która została użyta jako rezerwowa, w sposób przedstawiony w poniższym przykładzie:
var collator:Collator = new Collator("fr-FR"); if (collator.lastOperationStatus == LastOperationStatus.USING_FALLBACK_WARNING) { trace ("Using fallback locale: " + collator.actualLocaleIDName); }
Jeśli działanie konstruktora zostanie pomyślnie zakończone, wówczas właściwość lastOperationStatus
jest ustawiana na:
-
LastOperationStatus.NO_ERROR
Jeśli ustawienia narodowe o żądanym identyfikatorze nie są dostępne, wówczas właściwość lastOperationStatus
zostanie ustawiona na jedną z poniższych wartości:
LastOperationStatus.USING_FALLBACK_WARNING
LastOperationStatus.USING_DEFAULT_WARNING
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus.
Szczegółowe informacje na temat ostrzeżeń przedstawionych powyżej oraz na temat innych możliwych wartości właściwości lastOperationStatus
zawierają opisy w klasie LastOperationStatus
.
requestedLocaleIDName:String — Ciąg znaków String do użycia przez dany obiekt klasy Collator.
| |
initialMode:String (default = "sorting ") — Wartość ciągu znaków przeznaczona do określenia początkowego trybu porządkowania. Wartością domyślną jest CollatorMode.SORTING . Klasa CollatorMode zawiera listę dostępnych trybów.
|
Zgłasza
TypeError — gdy parametr requestedLocaleIDName ma wartość null .
| |
ArgumentError — gdy parametr requestedLocaleIDName zawiera niepoprawną wartość.
|
Powiązane elementy interfejsu API
compare | () | metoda |
public function compare(string1:String, string2:String):int
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Porównuje dwa ciągi znaków i zwraca wartość całkowitą, która wskazuje, czy pierwszy ciąg znaków jest krótszy, równy, czy dłuższy od drugiego ciągu znaków. W porównaniu wykorzystywane są reguły kolejności sortowania dla ustawień narodowych, których identyfikator określono w konstruktorze Collator()
.
Jeśli działanie wywołanej metody zakończy się pomyślnie, wówczas właściwość lastOperationStatus
zostanie ustawiona na:
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus
.
Parametry
string1:String — Pierwszy ciąg znaków porównania.
| |
string2:String — Drugi ciąg znaków porównania.
|
int — Wartość całkowita, która wskazuje, czy pierwszy ciąg znaków jest krótszy, równy, czy dłuższy od drugiego ciągu znaków.
|
Zgłasza
TypeError — gdy wymagany parametr ma wartość null.
| |
ArgumentError — gdy parametr zawiera niepoprawną wartość.
|
Powiązane elementy interfejsu API
equals | () | metoda |
public function equals(string1:String, string2:String):Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Porównuje dwa ciągi znaków i zwraca wartość logiczną, która określa, czy ciągi są równe. W porównaniu wykorzystywane są reguły kolejności sortowania dla ustawień narodowych, których identyfikator określono w konstruktorze Collator()
.
Jeśli działanie wywołanej metody zakończy się pomyślnie, wówczas właściwość lastOperationStatus
zostanie ustawiona na:
LastOperationStatus.NO_ERROR
W przeciwnym wypadku właściwość lastOperationStatus
zostanie ustawiona na jedną ze stałych zdefiniowanych w klasie LastOperationStatus
.
Parametry
string1:String — Pierwszy ciąg znaków porównania.
| |
string2:String — Drugi ciąg znaków porównania.
|
Boolean — Wartość logiczna, która wskazuje, czy ciągi znaków są równe (true ) lub nierówne (false ).
|
Zgłasza
TypeError — gdy wymagany parametr ma wartość null.
| |
ArgumentError — gdy parametr zawiera niepoprawną wartość.
|
Powiązane elementy interfejsu API
getAvailableLocaleIDNames | () | metoda |
public static function getAvailableLocaleIDNames():Vector.<String>
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2 |
Wyświetla listę identyfikatorów ustawień narodowych obsługiwanych przez tę klasę.
Jeśli ta klasa nie jest obsługiwana w bieżącym systemie operacyjnym, wówczas ta metoda zwróci wartość null.
ZwracaVector.<String> — Wektor ciągów znaków zawierających wszystkie identyfikatory ustawień narodowych obsługiwanych przez tę klasę.
|
- Iteracyjnie przegląda tablicę nazw identyfikacyjnych ustawień narodowych, w tym identyfikator domyślnych ustawień narodowych systemu operacyjnego (określony jako
LocaleID.DEFAULT
). - Dla każdej nazwy identyfikacyjnej ustawień narodowych tworzy obiekt Collator w trybie „sortowania” (domyślnym).
- Wyświetla nazwy identyfikacyjne żądanych i rzeczywistych ustawień narodowych oraz wartość właściwości
lastOperationStatus
, dzięki czemu można sprawdzić, czy użyte zostały alternatywne ustawienia narodowe. - Sortuje tablicę danych przy użyciu każdego obiektu Collator i wyświetla wyniki. Uzyskana kolejność jest inna dla każdych ustawień narodowych.
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); } } } }
- Tworzy obiekt Collator dla domyślnych ustawień narodowych użytkownika w trybie „zgodności”.
- Naprzemiennie przypisuje właściwości
Collator.ignoreDiacritics
wartościfalse
itrue
. - Porównuje zestawy ciągów zawierających znaki diakrytyczne oraz wielkie i małe litery.
- Prezentuje zmiany wyników porównania po zmianie wartości właściwości
Collator.ignoreDiacritics
iCollator.ignoreCase
.
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, 12:06 PM Z