RuleBasedCollator Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- 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 = "& a < b < c < d";
RuleBasedCollator simpleCollator = new RuleBasedCollator(simple);
String norwegian = "& a , A < b , B < c , C < d , D < e , E "
+ "< f , F < g , G < h , H < i , I < j , "
+ "J < k , K < l , L < m , M < n , N < "
+ "o , O < p , P < q , Q <r , R <s , S < "
+ "t , T < u , U < v , V < w , W < x , X "
+ "< y , Y < z , Z < \u00E5 = a\u030A "
+ ", \u00C5 = A\u030A ; aa , AA < \u00E6 "
+ ", \u00C6 < \u00F8 , \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 = "& C < 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 = "= \u0301 ; \u0300 ; \u0302 ; \u0308 "
+ "; \u0327 ; \u0303 ; \u0304 ; \u0305 "
+ "; \u0306 ; \u0307 ; \u0309 ; \u030A "
+ "; \u030B ; \u030C ; \u030D ; \u030E "
+ "; \u030F ; \u0310 ; \u0311 ; \u0312 "
+ "< a , A ; ae, AE ; \u00e6 , \u00c6 "
+ "< b , B < c, C < e, E & C < d , D";
// change the order of accent characters
String addOn = "& \u0300 ; \u0308 ; \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 \u2212
String jaString = "& \u2212 <\u3041, \u3042 <\u3043, "
+ "\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 |
| 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 |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| 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 |