Skip to main content

Way to check, match & resist. Sofisticated object oriented regex-based text parser

Project description

VBML - perfect pythonistic parser / string manipulator :sparkles:

PyPI - License PyPI - Downloads GitHub repo size GitHub issues by-label

Features

  • Clean regex-based parser
  • Easy-to-understand validators / Custom validators
  • Lots of features out-of-box

I am <name>, i am <age:int> years old + I am Steven, i am 20 years old = {"name": "Steven", "age": 20}

Installation

Install with pip:

pip install vbml

Or with poetry:

poetry add vbml

Run tests

Clone repo from git:

git clone https://github.com/tesseradecade/vbml.git

Go to repository and run tests with poetry:

cd vbml
poetry install
poetry run pytest

:book: Documentation

Full documentation contents are available in docs/index.md

Simple example

from vbml import Patcher, Pattern

patcher = Patcher()
pattern = Pattern("I have <amount:int> apples. They are <adj>")

result1 = patcher.check(pattern, "I have 3 apples. They are green")
result2 = patcher.check(pattern, "I have three apples. They are green")
result3 = patcher.check(pattern, "Something irrelevant")

result1 # {"amount": 3, "adj": "green"}
result2 # None
result3 # None

Leave a star if this project helped you
Made by timoniq

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vbml-1.1.post1.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

vbml-1.1.post1-py3-none-any.whl (15.1 kB view details)

Uploaded Python 3

File details

Details for the file vbml-1.1.post1.tar.gz.

File metadata

  • Download URL: vbml-1.1.post1.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.8.7 Darwin/20.6.0

File hashes

Hashes for vbml-1.1.post1.tar.gz
Algorithm Hash digest
SHA256 59e852b35b2c4d3f8e7d927ab2e0a9dde753f3427ab9a61aca7ed2f4d3986f3c
MD5 77660405ab3a4b7d27a546c931ceebd5
BLAKE2b-256 ba768b25f75c1ee4d41118676e5f3bb97397eac7eecd68d98054ec27e07974e3

See more details on using hashes here.

File details

Details for the file vbml-1.1.post1-py3-none-any.whl.

File metadata

  • Download URL: vbml-1.1.post1-py3-none-any.whl
  • Upload date:
  • Size: 15.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.8.7 Darwin/20.6.0

File hashes

Hashes for vbml-1.1.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 e3037c3f67b79128c48a100326fde833345e7d1e0d466566d37c2c98d08a587d
MD5 da60c87e7c55da0b52bef06e6ec1fb4e
BLAKE2b-256 c3ead125147525917dc5a35105e432706a33aebdd41c4707870d8f96133eff2c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page