Expand description
§enderecobr_rs 
enderecobr_rs é uma biblioteca em Rust que disponibiliza diversas funções para padronizar endereços brasileiros, corrigindo erros comuns, expandindo abreviações etc, afim de facilitar processamentos posteriores. Ela usa majoritariamente expressões regulares nas padronizações, com exceção do módulo experimental de separação de endereços, que utiliza um modelo probabilístico de Conditional Random Field já embutido na bilioteca.
Obs. Esta biblioteca é uma adaptação e expansão para Rust da versão original em R do enderecobr visando ganho de eficiência e expandir a implementação do pacote endereçobr em diferentes linguagens usando a versão em Rust como base.
§Bindings
Este é o repositório do enderecobr em Rust e em Python. A versão em Python é feita no subdiretório
bindings/python deste projeto. O repositório da versão em R se mantém em enderecobr,
utilizando internamente as funções desta lib. Algumas funções ou classes/structs da implementação em
Rust podem não estar expostas em outras linguagens. Vide documentação
do Rust para identificar tais situações. Para solicitar esse tipo de mudança ou bindings em outras
linguagens de programação, por favor abrir uma Issue ou Pull request neste repositório.
§Documentação:
§Instalação
A última versão pode ser baixada do crates com o comando:
cargo add enderecobr_rsOu adicionando em no seu Cargo.toml:
[dependencies]
enderecobr_rs = { version = "0.0.3" }§Exemplo de uso
§Rust:
use enderecobr_rs::{padronizar_complementos, padronizar_logradouros};
assert_eq!(padronizar_logradouros("r. gen.. glicério"), "RUA GENERAL GLICERIO");
assert_eq!(padronizar_complementos("QD1 LT2 CS3"), "QUADRA 1 LOTE 2 CASA 3");§Python:
import enderecobr
assert enderecobr.padronizar_logradouros("r. gen.. glicério") == "RUA GENERAL GLICERIO"
assert enderecobr.padronizar_logradouros("QD1 LT2 CS3") == "QUADRA 1 LOTE 2 CASA 3"§Nota 
enderecobr é desenvolvido por uma equipe de pesquisadores do Instituto de Pesquisa Econômica Aplicada (Ipea).
Re-exports§
pub use bairro::padronizar_bairros;pub use cep::padronizar_cep;pub use cep::padronizar_cep_leniente;pub use cep::padronizar_cep_numerico;pub use complemento::padronizar_complementos;pub use estado::padronizar_estados_para_codigo;pub use estado::padronizar_estados_para_nome;pub use estado::padronizar_estados_para_sigla;pub use logradouro::padronizar_logradouros;pub use municipio::padronizar_municipios;pub use numero::padronizar_numeros;pub use numero::padronizar_numeros_para_int;pub use numero::padronizar_numeros_para_string;pub use tipo_logradouro::padronizar_tipo_logradouro;
Modules§
Structs§
- Endereco
- Representa um endereço separado em seus atributos constituintes.
- Padronizador
- Estrutura responsável por padronizar textos de endereços com base em regras de substituição regulares condicionais.
- ParSubstituicao
- Representa um par de “regexp replace”. Usado internamente no Padronizador.
Functions§
- normalizar
- Função utilitária usada internamente para normalizar uma string para processamento posterior, removendo seus diacríticos e caracteres especiais.
- obter_
padronizador_ por_ tipo - Função utilitária utilizada nas ferramentas de CLI para selecionar um padronizador facilmente via uma string descritiva.