pathex.expressions.terms.letters_complement module

class LettersComplement(*letters)[source]

Bases: pathex.expressions.terms.term.Term

This class represents the complement of a language of singleton words (words of length 1).

>>> from pathex.expressions.aliases import *
>>> exp = ( LC('a')+'a' ) & ( C('ab')|C('ba')|C('aa')|C('xa') )
>>> assert exp.get_language() == exp.get_generator().get_language() == {'ba', 'xa'}
>>> assert str(LC('abc')) in {'-(a|b|c)', '-(a|c|b)', '-(b|a|c)', '-(b|c|a)', '-(c|a|b)', '-(c|b|a)'}
letters: frozenset