some algorithm implementations for automaton and regular expressions
Project description
Introduction
This is a simple regular expression program. It implements NFA to DFA, DFA minimization and automaton visualization.
To enable plotting feature, you may need to install graphviz
Usage
from automaton_tools import DFA as MyDFA
myinput = "abc12.+qs{2,}(yui){1,2}?"
dfa = MyDFA.fromRegex(myinput)
# check whether the string matches the pattern from the beginning or not
ismatch = dfa.match("yuiyui")
# plot the transition graph
dfa.drawGraph("dfa")
# it will generate dfa.png file
Known bug
It cannot handle .
or \w
properly.
Because they are considered as a special kind of characters.
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
automaton_tools-0.1.0.tar.gz
(14.0 kB
view details)
Built Distribution
File details
Details for the file automaton_tools-0.1.0.tar.gz
.
File metadata
- Download URL: automaton_tools-0.1.0.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 74c022a35f6e2b4b131580b0331ad3c021f6aaec7d847e0fc5f4aec7d7681efd |
|
MD5 | 1634602948b24a5cc6cd10c25b127144 |
|
BLAKE2b-256 | 761ae0187124abb3f56e7d54d73632aa649febb499075c0735387d06259ef918 |
File details
Details for the file automaton_tools-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: automaton_tools-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dd2bdf26abd0600e9c4df1fe6e0f51b47239d9ca001fd3a62fd325678158914d |
|
MD5 | 87bf1373c80fdd50b194d8b659a4ac06 |
|
BLAKE2b-256 | 6af797b3c832e5f3058c8285eaeae01065ac9487a439210573fb8a4db85f6603 |