Skip to content

Validate urban and rural addresses in Colombia. Developed using Mealy machines, regular expressions, regular grammars, and Automata, following the standardization of urban addresses set by the Ministry of Education.

License

Notifications You must be signed in to change notification settings

CamiloCortesM/addressValidator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

addressValidator

Contributors Forks starts license Slack

Validate urban and rural addresses in Colombia
Explore the docs»

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Documentation
  3. Roadmap
  4. Contributing
  5. License

About The Project

the project was developed through the definition of Mealy machines, regular expressions, regular grammars, Automata, for the validation of all addresses currently valid in Colombia.

the standardization of urban addresses of the ministry of education was used as a guideline.

Documentation

Getting Started

Installation

pip install addressValidator

or

py -m pip install addressValidator

latest stable version addressValidator==1.2.1

Usage

  • Example
    from addressValidator import address_validator
    
    address = "Calle 3BC #10-2 Barrio San Juan Apartamento 201"
    if address_validator(address):
       print(address+" direccion valida")
    else:
       print(address+" direccion invalida")

For more examples, please refer to the Examples packages

Functions

we can use 4 functions to validate both urban and rural addresses

address_validator

address_validator function receives as a parameter a mandatory string which will be evaluated and will return a boolean if valid or not.

from addressValidator import address_validator

# address_validator(str) -> bool
address = address_validator("Calle 13B #10-3")
print(address)// #True

if the address is not valid it will return False

from addressValidator import address_validator

# address_validator(str) -> bool
address = address_validator("Calle 13sur 13-121B")
print(address)// #False

address_validator_dian

fucntion address_validator_dian returns the address validation according to dian nomenclature

from addressValidator import address_validator_dian

# address_validator_dian(str) -> bool
address = address_validator_dian("Cl 13 B 10 3")
print(address)// #True

if the address is not valid it will return False

from addressValidator import address_validator_dian

# address_validator_dian(str) -> bool
address = address_validator_dian("Cl 13 sur 13 121 B")
print(address)// #False

address_validator_file

address_validator_file function receives a text file, does not return any value, this function creates a text file with the respective validations.

from addressValidator import address_validator_file

# address_validator_file(file) -> None
with open("address.txt") as file_object:
     address_validator_file(file_object) # create output.txt

here we can see that we read a file called address.txt that we find in the examples folder this function will return the validations of all the strings as we can see in the output.txt file.All this for urban and rural addresses

address_validator_file_dian

The function address_validator_file_dian receives a text file, creates a text file with the validations of the addresses with dian nomenclature

from addressValidator import address_validator_file_dian

# address_validator_file_dian(file) -> None
with open("addressDian.txt") as file_object:
    address_validator_file_dian(file_object) # create output.txt

We read the addressDian file from the root path and send the document to the function and it returns the validations in an output.txt file. Validations with file for dian nomenclature is in the output_dian.txt file

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

About

Validate urban and rural addresses in Colombia. Developed using Mealy machines, regular expressions, regular grammars, and Automata, following the standardization of urban addresses set by the Ministry of Education.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages