|Maintainer||Sebastian Fischer <mailto:email@example.com>|
This module implements leftmost longest matching based on weighted regular expressions. It should be imported qualified as the interface resembles that provided by other matching modules.
Returns the leftmost longest of all non-empty matchings for a regular expression in a given word. If the empty word is the only matching its position is zero.
Subwords of words that match a regular expression are represented
as values of type
Semiring used for leftmost longest matching.
LeftLong type satisfies the distributive laws only with a
precondition on all involved multiplications: multiplied matches
must be adjacent and the start position must be smaller than the
end position. This precondition is satisfied for all
multiplications during regular expression matching.