A python library to validate/sanitize a string such as filenames/variable-names/excel-sheet-names.
Project description
Home-page: https://github.com/thombashi/pathvalidate
Author: Tsuyoshi Hombashi
Author-email: gogogo.vm@gmail.com
License: MIT License
Description: pathvalidate
============
.. image:: https://badge.fury.io/py/pathvalidate.svg
:target: https://badge.fury.io/py/pathvalidate
.. image:: https://img.shields.io/pypi/pyversions/pathvalidate.svg
:target: https://pypi.python.org/pypi/pathvalidate
.. image:: https://img.shields.io/travis/thombashi/pathvalidate/master.svg?label=Linux
:target: https://travis-ci.org/thombashi/pathvalidate
:alt: Linux CI test status
.. image:: https://img.shields.io/appveyor/ci/thombashi/pathvalidate/master.svg?label=Windows
:target: https://ci.appveyor.com/project/thombashi/pathvalidate/branch/master
:alt: Windows CI test status
.. image:: https://coveralls.io/repos/github/thombashi/pathvalidate/badge.svg?branch=master
:target: https://coveralls.io/github/thombashi/pathvalidate?branch=master
.. image:: https://img.shields.io/github/stars/thombashi/pathvalidate.svg?style=social&label=Star
:target: https://github.com/thombashi/pathvalidate
Summary
-------
A python library to validate/sanitize a string such as filenames/variable-names/excel-sheet-names.
Feature
-------
- Validate/Sanitize a string:
- file name
- file path
- variable name: ``Python``/``JavaScript``
- `Labeled Tab-separated Values (LTSV) <http://ltsv.org/>`__ label
- Excel sheet name
- SQLite table/attribute name
Examples
========
Validate a filename
-------------------
.. code:: python
import pathvalidate
try:
pathvalidate.validate_filename("\0_a*b:c<d>e%f/(g)h+i_0.txt")
except ValueError:
print("invalid filename!")
.. code::
invalid filename!
Sanitize a filename
-------------------
.. code:: python
import pathvalidate
filename = "_a*b:c<d>e%f/(g)h+i_0.txt"
print(pathvalidate.sanitize_filename(filename))
.. code::
_abcde%f(g)h+i_0.txt
Sanitize a variable name
------------------------
.. code:: python
import pathvalidate
print(pathvalidate.sanitize_python_var_name("_a*b:c<d>e%f/(g)h+i_0.txt"))
.. code::
abcdefghi_0txt
For more information
--------------------
More examples are available at
http://pathvalidate.rtfd.io/en/latest/pages/examples/index.html
Installation
============
::
pip install pathvalidate
Dependencies
============
Python 2.7+ or 3.3+
No package dependencies.
Test dependencies
-----------------
- `pytest <http://pytest.org/latest/>`__
- `pytest-runner <https://pypi.python.org/pypi/pytest-runner>`__
- `tox <https://testrun.org/tox/latest/>`__
Documentation
=============
http://pathvalidate.rtfd.io/
Keywords: path,validation,validator,sanitize,file,Excel,JavaScript,LTSV,SQLite
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Author: Tsuyoshi Hombashi
Author-email: gogogo.vm@gmail.com
License: MIT License
Description: pathvalidate
============
.. image:: https://badge.fury.io/py/pathvalidate.svg
:target: https://badge.fury.io/py/pathvalidate
.. image:: https://img.shields.io/pypi/pyversions/pathvalidate.svg
:target: https://pypi.python.org/pypi/pathvalidate
.. image:: https://img.shields.io/travis/thombashi/pathvalidate/master.svg?label=Linux
:target: https://travis-ci.org/thombashi/pathvalidate
:alt: Linux CI test status
.. image:: https://img.shields.io/appveyor/ci/thombashi/pathvalidate/master.svg?label=Windows
:target: https://ci.appveyor.com/project/thombashi/pathvalidate/branch/master
:alt: Windows CI test status
.. image:: https://coveralls.io/repos/github/thombashi/pathvalidate/badge.svg?branch=master
:target: https://coveralls.io/github/thombashi/pathvalidate?branch=master
.. image:: https://img.shields.io/github/stars/thombashi/pathvalidate.svg?style=social&label=Star
:target: https://github.com/thombashi/pathvalidate
Summary
-------
A python library to validate/sanitize a string such as filenames/variable-names/excel-sheet-names.
Feature
-------
- Validate/Sanitize a string:
- file name
- file path
- variable name: ``Python``/``JavaScript``
- `Labeled Tab-separated Values (LTSV) <http://ltsv.org/>`__ label
- Excel sheet name
- SQLite table/attribute name
Examples
========
Validate a filename
-------------------
.. code:: python
import pathvalidate
try:
pathvalidate.validate_filename("\0_a*b:c<d>e%f/(g)h+i_0.txt")
except ValueError:
print("invalid filename!")
.. code::
invalid filename!
Sanitize a filename
-------------------
.. code:: python
import pathvalidate
filename = "_a*b:c<d>e%f/(g)h+i_0.txt"
print(pathvalidate.sanitize_filename(filename))
.. code::
_abcde%f(g)h+i_0.txt
Sanitize a variable name
------------------------
.. code:: python
import pathvalidate
print(pathvalidate.sanitize_python_var_name("_a*b:c<d>e%f/(g)h+i_0.txt"))
.. code::
abcdefghi_0txt
For more information
--------------------
More examples are available at
http://pathvalidate.rtfd.io/en/latest/pages/examples/index.html
Installation
============
::
pip install pathvalidate
Dependencies
============
Python 2.7+ or 3.3+
No package dependencies.
Test dependencies
-----------------
- `pytest <http://pytest.org/latest/>`__
- `pytest-runner <https://pypi.python.org/pypi/pytest-runner>`__
- `tox <https://testrun.org/tox/latest/>`__
Documentation
=============
http://pathvalidate.rtfd.io/
Keywords: path,validation,validator,sanitize,file,Excel,JavaScript,LTSV,SQLite
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pathvalidate-0.15.0.tar.gz
(16.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pathvalidate-0.15.0.tar.gz.
File metadata
- Download URL: pathvalidate-0.15.0.tar.gz
- Upload date:
- Size: 16.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d0bb777b4a6b95426d4a4ac47dcf6a2c8173a78b4019e94b8e8a0d59b0095ed
|
|
| MD5 |
869d111f587836920f5ae36751d422fc
|
|
| BLAKE2b-256 |
a67b2c3026ead121829ed27eba4fba7b4cd6ec8c210f76b0601119a915918f6c
|
File details
Details for the file pathvalidate-0.15.0-py2.py3-none-any.whl.
File metadata
- Download URL: pathvalidate-0.15.0-py2.py3-none-any.whl
- Upload date:
- Size: 16.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32896654867b023b3a6af97b3d35ec3af24a5a26dbf446d39a9e9b35cf4f2765
|
|
| MD5 |
236453c9e01feea20865f57c8656f4d8
|
|
| BLAKE2b-256 |
564fea2883c6c70856a86b5881aa639144da2bd205a9de70e823b6e2dee06fd0
|