Exact and fuzzy string and regular expression matching algorithms for PHP, JavaScript, Python
version: 4.0.0 in progress
Included Algorithms:
- Finite State Automaton Matcher
- Rabin-Karp Matcher
- Knuth-Morris-Pratt Matcher
- Boyer-Moore Matcher
- Two-Way Matcher
- Commentz-Walter Matcher (TODO)
- Baeza-Yates-Gonnet Matcher (TODO)
- Aho-Corasick Matcher (TODO)
A generic Non-Deterministic Finite Automaton is also included that can match exact regular expression patterns, fuzzy patterns, fuzzy regular expression patterns and various combinations of these.
The theory behind the implementation of the generic automaton is a custom fully functional and transparent fusion of a Non-Deterministic Finite Automaton for a given regular expression, and a Non-Deterministic Levenshtein Automaton for approximate matching either at char level or at word level (ie approximate words or approximate sentences) with option to take account of transpositions, ie a Damerau-Levenshtein Automaton.
examples:
see test/ folder
see also:
- Abacus Computer Algebra and Symbolic Computation System for Combinatorics and Algebraic Number Theory for JavaScript and Python
- TensorView view array data as multidimensional tensors of various shapes efficiently
- Geometrize Computational Geometry and Rendering Library for JavaScript
- Plot.js simple and small library which can plot graphs of functions and various simple charts and can render to Canvas, SVG and plain HTML
- CanvasLite an html canvas implementation in pure JavaScript
- Rasterizer stroke and fill lines, rectangles, curves and paths, without canvas
- Gradient create linear, radial, conic and elliptic gradients and image patterns without canvas
- css-color simple class to parse and manipulate colors in various formats
- MOD3 3D Modifier Library in JavaScript
- HAAR.js image feature detection based on Haar Cascades in JavaScript (Viola-Jones-Lienhart et al Algorithm)
- HAARPHP image feature detection based on Haar Cascades in PHP (Viola-Jones-Lienhart et al Algorithm)
- FILTER.js video and image processing and computer vision Library in pure JavaScript (browser and node)
- Xpresion a simple and flexible eXpression parser engine (with custom functions and variables support), based on GrammarTemplate, for PHP, JavaScript, Python
- Regex Analyzer/Composer Regular Expression Analyzer and Composer for PHP, JavaScript, Python
- GrammarTemplate grammar-based templating for PHP, JavaScript, Python
- codemirror-grammar transform a formal grammar in JSON format into a syntax-highlight parser for CodeMirror editor
- ace-grammar transform a formal grammar in JSON format into a syntax-highlight parser for ACE editor
- prism-grammar transform a formal grammar in JSON format into a syntax-highlighter for Prism code highlighter
- highlightjs-grammar transform a formal grammar in JSON format into a syntax-highlight mode for Highlight.js code highlighter
- syntaxhighlighter-grammar transform a formal grammar in JSON format to a highlight brush for SyntaxHighlighter code highlighter
- Fuzzion a library of fuzzy / approximate string metrics for PHP, JavaScript, Python
- Matchy a library of string matching algorithms for PHP, JavaScript, Python
- PatternMatchingAlgorithms library of Pattern Matching Algorithms in JavaScript using Matchy
- SortingAlgorithms library of Sorting Algorithms in JavaScript
