관리-도구
편집 파일: FilenameCleaner.cpython-39.pyc
a "e� � @ s G d d� de �ZdS )c @ sH e Zd Zedd� �Zedd� �Zedd� �Zedd� �Zed d � �ZdS )�FilenameCleanerc C s� t �| �} zP| �d�}| d |� }| |d d � }d|v rNt �|�}t �|�}|d | W S tyl Y n ty| Y n0 | S )N�/� �.)r �_strip_abnormalities�rindex�_strip_around_so_delimited_dots�_strip_after_dash� IndexError� ValueError)�filenameZslash�dirname�basename� r �D/usr/lib/python3.9/site-packages/tracer/resources/FilenameCleaner.py�strip s zFilenameCleaner.stripc C sx z| d | � d�� } W n ty( Y n0 | �d�r@| dd� } d| v rZ| d| � d�� } d| v rt| d| �d�� } | S )N� z#new� ����;z.#prelink#.)�indexr �endswithr )r r r r r / s z$FilenameCleaner._strip_abnormalitiesc C s~ zV| � d�}|d } t|�dkr(| d7 } | �d�}| �d�}| d |� | |d � } W n" tyh Y n tyx Y n0 | S )Nz.sor r r )�split�lenr r r r )r r Zfirst_dot_iZ last_dot_ir r r r F s z/FilenameCleaner._strip_around_so_delimited_dotsc C sp zH| � d�}| �d|�}t�| |d |� �rF| d |� | |d � } W n" tyZ Y n tyj Y n0 | S )N�-r r )r r r �_is_versionr r )r Zdash�dotr r r r U s z!FilenameCleaner._strip_after_dashc C s$ | D ]}|� � r|dkr dS qdS )z: Returns True if string contains only digits and dots r FT)�isdigit)�string�charr r r r a s zFilenameCleaner._is_versionN) �__name__� __module__�__qualname__�staticmethodr r r r r r r r r r s r N)�objectr r r r r �<module> �