Skip to main content

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

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)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pathvalidate-0.15.0-py2.py3-none-any.whl (16.7 kB view details)

Uploaded Python 2Python 3

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

Hashes for pathvalidate-0.15.0.tar.gz
Algorithm Hash digest
SHA256 5d0bb777b4a6b95426d4a4ac47dcf6a2c8173a78b4019e94b8e8a0d59b0095ed
MD5 869d111f587836920f5ae36751d422fc
BLAKE2b-256 a67b2c3026ead121829ed27eba4fba7b4cd6ec8c210f76b0601119a915918f6c

See more details on using hashes here.

File details

Details for the file pathvalidate-0.15.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pathvalidate-0.15.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 32896654867b023b3a6af97b3d35ec3af24a5a26dbf446d39a9e9b35cf4f2765
MD5 236453c9e01feea20865f57c8656f4d8
BLAKE2b-256 564fea2883c6c70856a86b5881aa639144da2bd205a9de70e823b6e2dee06fd0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page