U
    e*                     @   s(   d dl Z d dlmZ G dd deZdS )    N)StemmerIc                   @   s*   e Zd ZdZd
ddZdd Zdd Zd	S )RegexpStemmera  
    A stemmer that uses regular expressions to identify morphological
    affixes.  Any substrings that match the regular expressions will
    be removed.

        >>> from nltk.stem import RegexpStemmer
        >>> st = RegexpStemmer('ing$|s$|e$|able$', min=4)
        >>> st.stem('cars')
        'car'
        >>> st.stem('mass')
        'mas'
        >>> st.stem('was')
        'was'
        >>> st.stem('bee')
        'bee'
        >>> st.stem('compute')
        'comput'
        >>> st.stem('advisable')
        'advis'

    :type regexp: str or regexp
    :param regexp: The regular expression that should be used to
        identify morphological affixes.
    :type min: int
    :param min: The minimum length of string to stem
    r   c                 C   s$   t |dst|}|| _|| _d S )Npattern)hasattrrecompile_regexp_min)selfregexpmin r   Q/var/www/html/assets/scripts/venv/lib/python3.8/site-packages/nltk/stem/regexp.py__init__*   s    

zRegexpStemmer.__init__c                 C   s$   t || jk r|S | jd|S d S )N )lenr	   r   sub)r
   wordr   r   r   stem1   s    zRegexpStemmer.stemc                 C   s   d| j jdS )Nz<RegexpStemmer: >)r   r   )r
   r   r   r   __repr__7   s    zRegexpStemmer.__repr__N)r   )__name__
__module____qualname____doc__r   r   r   r   r   r   r   r      s   
r   )r   Znltk.stem.apir   r   r   r   r   r   <module>	   s   