U
    ŠÇ-eƒ  ã                   @   s$   d dl Z dd„ Zdd„ Zdd„ ZdS )é    Nc                 C   s   d  ttt| ƒƒ¡S )zÁ
    Given a glob pattern, produce a regex that matches it.

    >>> translate('*.txt')
    '[^/]*\\.txt'
    >>> translate('a?txt')
    'a[^/]txt'
    >>> translate('**/*')
    '.*/[^/]*'
    Ú )ÚjoinÚmapÚreplaceÚseparate©Úpattern© r	   úJ/var/www/html/Darija-Ai-Train/env/lib/python3.8/site-packages/zipp/glob.pyÚ	translate   s    r   c                 C   s   t  d| ¡S )zÓ
    Separate out character sets to avoid translating their contents.

    >>> [m.group(0) for m in separate('*.txt')]
    ['*.txt']
    >>> [m.group(0) for m in separate('a[?]txt')]
    ['a', '[?]', 'txt']
    z+([^\[]+)|(?P<set>[\[].*?[\]])|([\[][^\]]*$))ÚreÚfinditerr   r	   r	   r
   r      s    	r   c                 C   s2   |   d¡p0t |   d¡¡ dd¡ dd¡ dd¡S )	zE
    Perform the replacements for a match from :func:`separate`.
    Úsetr   z\*\*z.*z\*z[^/]*z\?z[^/])Úgroupr   Úescaper   )Úmatchr	   r	   r
   r      s    
 ÿ þ ýÿr   )r   r   r   r   r	   r	   r	   r
   Ú<module>   s   