Idioma

RuleBasedCollator Classe

Definição

RuleBasedCollator é uma subclasse concreta do Collator.

[Android.Runtime.Register("android/icu/text/RuleBasedCollator", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class RuleBasedCollator : Android.Icu.Text.Collator
[<Android.Runtime.Register("android/icu/text/RuleBasedCollator", ApiSince=24, DoNotGenerateAcw=true)>]
type RuleBasedCollator = class
    inherit Collator
Herança
RuleBasedCollator
Atributos

Comentários

RuleBasedCollator é uma subclasse concreta do Collator. Ele permite a personalização do Collator por meio de conjuntos de regras especificados pelo usuário. RuleBasedCollator foi projetado para ser totalmente compatível com o UCA (Algoritmo de Ordenação Unicode) e está em conformidade com o ISO 14651.

Um Collator é thread-safe somente quando congelado. Consulte #isFrozen() e android.icu.util.Freezable.

Os usuários são altamente incentivados a ler o Guia do Usuário para obter mais informações sobre o serviço de ordenação antes de usar essa classe.

Crie um RuleBasedCollator de uma localidade chamando o método de fábrica getInstance(Locale) na classe base Collator. Collator.getInstance(Locale) cria um objeto RuleBasedCollator com base nas regras de ordenação definidas pela localidade do argumento. Se uma ordenação ou atributos de ordenação personalizados for necessário, use o construtor RuleBasedCollator(String) com as regras apropriadas. O RuleBasedCollator personalizado baseará sua ordenação na ordenação raiz CLDR, ajustando novamente os atributos e as ordens dos caracteres na regra especificada adequadamente.

RuleBasedCollator fornece ordens de ordenação corretas para a maioria das localidades com suporte na UTI. Se dados específicos de uma localidade não estiverem disponíveis, os pedidos eventualmente retornarão à ordem de classificação raiz CLDR.

Para obter informações sobre a sintaxe da regra de ordenação e detalhes sobre a personalização, consulte a seção de personalização de ordenação do Guia do Usuário.

<forte>Observação</forte> de que há algumas diferenças entre a sintaxe da regra de ordenação usada no Java e no ICU4J:

<ul><li>De acordo com a documentação do JDK: <br>Modifier '!' : ativa a troca vogal-consoante thai/lao. Se essa regra estiver em vigor quando uma vogal tailandesa do intervalo \ U0E40-\ U0E44 precede uma consoante tailandesa do intervalo \ U0E01-\ U0E2E OU uma vogal lao do intervalo \ U0EC0-\ U0EC4 precede uma consoante lao do intervalo \ U0E81-\ U0EAE, em seguida, a vogal é colocada após a consoante para fins de ordenação. <br> Se uma regra estiver sem o modificador '!', a troca vogal-conso tailandesa/lao não será ativada. <RuleBasedCollator do br> ICU4J não dá suporte para desativar a troca vogal-consoante thai/lao, uma vez que a UCA afirma claramente que tem que ter suporte para garantir uma ordem de classificação correta. Se um '!' for encontrado, ele será ignorado.</li><li>Conforme mencionado na documentação do Collator da classe base, não há suporte para o modo de decomposição de compatibilidade.</li></ul>

<exemplos> fortes</fortes>

Criando RuleBasedCollators Personalizados: <blockquote>

String simple = "&amp; a &lt; b &lt; c &lt; d";
            RuleBasedCollator simpleCollator = new RuleBasedCollator(simple);

            String norwegian = "&amp; a , A &lt; b , B &lt; c , C &lt; d , D &lt; e , E "
                               + "&lt; f , F &lt; g , G &lt; h , H &lt; i , I &lt; j , "
                               + "J &lt; k , K &lt; l , L &lt; m , M &lt; n , N &lt; "
                               + "o , O &lt; p , P &lt; q , Q &lt;r , R &lt;s , S &lt; "
                               + "t , T &lt; u , U &lt; v , V &lt; w , W &lt; x , X "
                               + "&lt; y , Y &lt; z , Z &lt; &#92;u00E5 = a&#92;u030A "
                               + ", &#92;u00C5 = A&#92;u030A ; aa , AA &lt; &#92;u00E6 "
                               + ", &#92;u00C6 &lt; &#92;u00F8 , &#92;u00D8";
            RuleBasedCollator norwegianCollator = new RuleBasedCollator(norwegian);

</blockquote>

Concatenando regras para combinar Collators: <blockquote>

// Create an en_US Collator object
            RuleBasedCollator en_USCollator = (RuleBasedCollator)
                Collator.getInstance(new Locale("en", "US", ""));
            // Create a da_DK Collator object
            RuleBasedCollator da_DKCollator = (RuleBasedCollator)
                Collator.getInstance(new Locale("da", "DK", ""));
            // Combine the two
            // First, get the collation rules from en_USCollator
            String en_USRules = en_USCollator.getRules();
            // Second, get the collation rules from da_DKCollator
            String da_DKRules = da_DKCollator.getRules();
            RuleBasedCollator newCollator =
                                        new RuleBasedCollator(en_USRules + da_DKRules);
            // newCollator has the combined rules

</blockquote>

Fazendo alterações em um RuleBasedCollator existente para criar um novo Collator objeto, acrescentando alterações à regra existente: <blockquote>

// Create a new Collator object with additional rules
            String addRules = "&amp; C &lt; ch, cH, Ch, CH";
            RuleBasedCollator myCollator =
                new RuleBasedCollator(en_USCollator.getRules() + addRules);
            // myCollator contains the new rules

</blockquote>

Como alterar a ordem dos acentos sem espaçamento: <blockquote>

// old rule with main accents
            String oldRules = "= &#92;u0301 ; &#92;u0300 ; &#92;u0302 ; &#92;u0308 "
                            + "; &#92;u0327 ; &#92;u0303 ; &#92;u0304 ; &#92;u0305 "
                            + "; &#92;u0306 ; &#92;u0307 ; &#92;u0309 ; &#92;u030A "
                            + "; &#92;u030B ; &#92;u030C ; &#92;u030D ; &#92;u030E "
                            + "; &#92;u030F ; &#92;u0310 ; &#92;u0311 ; &#92;u0312 "
                            + "&lt; a , A ; ae, AE ; &#92;u00e6 , &#92;u00c6 "
                            + "&lt; b , B &lt; c, C &lt; e, E &amp; C &lt; d , D";
            // change the order of accent characters
            String addOn = "&amp; &#92;u0300 ; &#92;u0308 ; &#92;u0302";
            RuleBasedCollator myCollator = new RuleBasedCollator(oldRules + addOn);

</blockquote>

Colocando uma nova ordem primária antes da configuração padrão, por exemplo, classificar caracteres em inglês antes ou depois de caracteres japoneses no japonês Collator: <blockquote>

// get en_US Collator rules
            RuleBasedCollator en_USCollator
                                   = (RuleBasedCollator)Collator.getInstance(Locale.US);
            // add a few Japanese characters to sort before English characters
            // suppose the last character before the first base letter 'a' in
            // the English collation rule is &#92;u2212
            String jaString = "&amp; &#92;u2212 &lt;&#92;u3041, &#92;u3042 &lt;&#92;u3043, "
                              + "&#92;u3044";
            RuleBasedCollator myJapaneseCollator
                         = new RuleBasedCollator(en_USCollator.getRules() + jaString);

</blockquote>

Essa classe não é subclassável

Java documentação para android.icu.text.RuleBasedCollator.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Construtores

Nome Description
RuleBasedCollator(String)

Construtor que usa as regras de argumento para personalização.

Campos

Nome Description
CanonicalDecomposition
Obsoleto.

Valor do modo de decomposição.

(Herdado de Collator)
FullDecomposition
Obsoleto.

<strong>[icu] Observação:</strong> Isso é para compatibilidade com versões anteriores apenas com APIs Java.

(Herdado de Collator)
Identical
Obsoleto.

Menor valor de força do Collator.

(Herdado de Collator)
NoDecomposition
Obsoleto.

Valor do modo de decomposição.

(Herdado de Collator)
Primary
Obsoleto.

Valor de força de ordenação mais forte.

(Herdado de Collator)
Quaternary
Obsoleto.

<strong>[icu]</strong> Fourth level collator strength value.

(Herdado de Collator)
Secondary
Obsoleto.

Valor de força do collator de segundo nível.

(Herdado de Collator)
Tertiary
Obsoleto.

Valor de força do collator de terceiro nível.

(Herdado de Collator)

Propriedades

Nome Description
AlternateHandlingShifted

Verifica se o comportamento de tratamento alternativo é o SHIFTED definido pela UCA ou NON_IGNORABLE. -ou- Define o tratamento alternativo para que a força QUATERNARY seja deslocada ou não ignorável.

CaseLevel

Verifica se o nível de caso está definido como true. -ou- Quando o nível de caso é definido como true, um peso adicional é formado entre o peso SECUNDÁRIO e TERCIÁRIO, conhecido como o nível de caso.

Class

Retorna a classe de runtime deste Object.

(Herdado de Object)
Decomposition

Retorna o modo de decomposição deste Collator. -ou- Define o modo de decomposição deste Collator.

(Herdado de Collator)
FrenchCollation

Verifica se a ordenação francesa está definida como true. -ou- Define o modo para a direção dos pesos SECUNDÁRIOs a serem usados na ordenação francesa.

Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
IsFrozen

Determina se o objeto foi congelado ou não.

(Herdado de Collator)
JniIdentityHashCode

Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade.

(Herdado de Object)
JniManagedPeerState

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
JniPeerMembers

Obtém os metadados JNI usados para acessar membros dessa associação Java.

LowerCaseFirst

Retornará true se um caractere em letras minúsculas for classificado antes do caractere maiúsculo correspondente. -ou- Define as ordens de caracteres maiúsculas e minúsculas para classificar antes dos caracteres maiúsculas e minúsculas, em TERTIARY de força.

MaxVariable

<strong>[icu]</strong> Retorna o grupo de reordenação máxima cujos caracteres são afetados pelo comportamento de tratamento alternativo.

(Herdado de Collator)
NumericCollation

Método para recuperar o valor de ordenação numérica. -ou- <strong>[icu]</strong> Quando a ordenação numérica é ativada, esse Collator faz com que as subcadeias de caracteres classifiquem de acordo com seus valores numéricos.

PeerReference

Obtém a referência de objeto JNI para este par Java.

(Herdado de Object)
Rules

Obtém as regras de personalização de ordenação para este RuleBasedCollator.

Strength

Retorna o atributo de força desse Collator. -ou- Define o atributo de força desse Collator.

(Herdado de Collator)
TailoredSet

<strong>[icu]</strong> Retorna um UnicodeSet que contém todos os caracteres e sequências adaptados neste collator.

(Herdado de Collator)
ThresholdClass

Obtém a classe Java usada para expedição de método virtual.

(Herdado de Collator)
ThresholdType

Obtém o tipo gerenciado que declara essa associação de Java.

(Herdado de Collator)
UCAVersion

Obtenha a versão UCA deste objeto collator.

UpperCaseFirst

Retornará true se um caractere em letras maiúsculas for classificado antes do caractere minúsculo correspondente. -ou- Define se caracteres maiúsculos classificam antes de caracteres minúsculos ou vice-versa, em TERTIARY de força.

VariableTop

<strong>[icu]</strong> Obtém o valor superior da variável de um Collator.

Version

Obtenha a versão deste objeto collator.

Métodos

Nome Description
Clone()

Clona o collator.

(Herdado de Collator)
CloneAsThawed()

Fornece a operação de clone.

(Herdado de Collator)
Compare(Object, Object)

Compara o objeto de origem com o objeto de destino.

(Herdado de Collator)
Compare(String, String)

Compara a cadeia de caracteres de texto de origem com a cadeia de caracteres de texto de destino de acordo com as regras de ordenação, o modo de resistência e decomposição para este RuleBasedCollator.

Construct(JniObjectReference, JniObjectReferenceOptions)

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
Dispose()

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dispose(Boolean)

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
DisposeUnlessReferenced()

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
Equals(Object)

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
Equals(Object)

Indica se algum outro objeto é "igual a" este.

(Herdado de Object)
Equals(String, String)

Compara a igualdade de duas cadeias de caracteres de texto usando as regras, a força e o modo de decomposição desse Collator.

(Herdado de Collator)
Freeze()

Congela o collator.

(Herdado de Collator)
GetCollationElementIterator(ICharacterIterator)

Retorne um CollationElementIterator para o CharacterIterator fornecido.

GetCollationElementIterator(String)

Retornar um CollationElementIterator para a cadeia de caracteres fornecida.

GetCollationElementIterator(UCharacterIterator)

Retorne um CollationElementIterator para o UCharacterIterator fornecido.

GetCollationKey(String)

Obtenha uma chave de ordenação para a origem da cadeia de caracteres de argumento deste RuleBasedCollator.

GetContractionsAndExpansions(UnicodeSet, UnicodeSet, Boolean)

Obtém conjuntos unicode que contêm contrações e/ou expansões de um collator

GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
GetReorderCodes()

Recupera os códigos de reordenação para esse collator.

(Herdado de Collator)
GetRules(Boolean)

Retorna as regras atuais.

JavaFinalize()
Obsoleto.

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
Notify()

Ativa um único thread que está aguardando no monitor deste objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
SetAlternateHandlingDefault()

Define o modo de tratamento alternativo como o modo inicial definido durante a construção do RuleBasedCollator.

SetCaseFirstDefault()

Define o primeiro modo de maiúsculas e minúsculas para o modo inicial definido durante a construção do RuleBasedCollator.

SetCaseLevelDefault()

Define o modo de nível de maiúsculas e minúsculas para o modo inicial definido durante a construção do RuleBasedCollator.

SetDecompositionDefault()

Define o modo de decomposição como o modo inicial definido durante a construção do RuleBasedCollator.

SetFrenchCollationDefault()

Define o modo de ordenação francês como o modo inicial definido durante a construção do RuleBasedCollator.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle

(Herdado de Object)
SetMaxVariable(Int32)

<strong>[icu]</strong> Define a variável de cima para a parte superior do grupo de reordenação especificado.

(Herdado de Collator)
SetNumericCollationDefault()

Método para definir a ordenação numérica como seu valor padrão.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
SetReorderCodes(Int32[])

Define os códigos de reordenação para esse collator.

(Herdado de Collator)
SetStrengthDefault()

Define a força de ordenação para o modo inicial definido durante a construção do RuleBasedCollator.

ToArray<T>()

Cria uma matriz gerenciada com base nesse wrapper de matriz Java.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

Cancela o registro desse par Java do runtime de interoperabilidade.

(Herdado de Object)
Wait()

Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<>

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
IComparator.Compare(Object, Object)

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de Collator)
IFreezable.CloneAsThawed()

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de Collator)
IFreezable.Freeze()

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de Collator)
IJavaPeerable.Disposed()

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
IJavaPeerable.Finalized()

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

RuleBasedCollator é uma subclasse concreta do Collator.

(Herdado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Remove essa instância da pesquisa de objeto Java do runtime.

(Herdado de Collator)

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo marcada por runtime do Android.

JavaCast<TResult>(IJavaObject)

RuleBasedCollator é uma subclasse concreta do Collator.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a