{
"info": {
"author": "Tobias Litherland",
"author_email": "tobiaslland@gmail.com",
"bugtrack_url": null,
"classifiers": [
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3"
],
"description": "# tregex\n[](https://travis-ci.org/tobiasli/tregex)
\n[](https://coveralls.io/github/tobiasli/tregex?branch=master)
\n[](https://badge.fury.io/py/tregex-tobiasli)
\n\n`tregex` is a wrapper around Python regular expressions that makes usage smoother and more user friendly.\n\n## Install\n\n```\npip install tregex-tobiasli\n```\n\n## Usage\n\n```python\nimport tregex as tr\n\nt = tr.to_tuple(pattern='([^;]+?)@(.+?)\\.([^;]+)', string='john.smith@somewhere.co.uk; hackzor@coolface.com')\nassert t[0][1] == 'somewhere'\nassert t[1][2] == 'com'\n\npattern = '(?P[^;]+?)@(?P.+?)\\.(?P[^;]+)'\nt = tr.to_dict(pattern=pattern, string='john.smith@somewhere.co.uk; hackzor@coolface.com')\nassert t[0]['name'] == 'john.smith'\nassert t[1]['address'] == 'coolface'\n\nt = tr.to_object(pattern=pattern, string='john.smith@somewhere.co.uk; hackzor@coolface.com')\nassert t[0].name == 'john.smith'\nassert t[1].address == 'coolface'\n```\n\nThe above methods patterns can be either a string or a compiled regular expression. `TregexCompiled` is a class for simply\ncontaining the compiled regex to be run on the above methods. If patterns are long, this usage will speed things up\nconsiderably.\n\n```python\nfrom tregex import TregexCompiled\n\npattern = '(?P[^;]+?)@(?P.+?)\\.(?P[^;]+)'\ntrc = TregexCompiled(pattern)\n\nt = trc.to_object('john.smith@somewhere.co.uk; hackzor@coolface.com')\n\nassert t[0].name == 'john.smith'\n```\n\ntregex also contains some methods for simply fuzzy text matching using `difflib.SequenceMatcher`:\n\n```python\nfrom tregex import find_best\n\nplaces_in_wales = ['Llanaber', 'Llanaelhaearn', 'Llanbedr', 'Llandbedrgoch', 'Llanbedrog', 'Llanberis', 'Llandanwg', 'Llanegryn', 'Llandegwning', 'Llandeiniolen', 'Llandwrog']\n\nbest = find_best('Llanberris', places_in_wales)\nassert best == 'Llanberis'\n```\n\nThe other methods are `find`, `find_scores` (returns the matched scores along with the candidate) and `similarity` (which\nreturns the score between a single pair of strings).",
"description_content_type": "text/markdown",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/tobiasli/tregex",
"keywords": "",
"license": "",
"maintainer": "",
"maintainer_email": "",
"name": "tregex-tobiasli",
"package_url": "https://pypi.org/project/tregex-tobiasli/",
"platform": "",
"project_url": "https://pypi.org/project/tregex-tobiasli/",
"project_urls": {
"Homepage": "https://github.com/tobiasli/tregex"
},
"release_url": "https://pypi.org/project/tregex-tobiasli/1.0.3/",
"requires_dist": null,
"requires_python": "",
"summary": "Wrapper for more functionality out of regex parse results.",
"version": "1.0.3",
"yanked": false,
"yanked_reason": null
},
"last_serial": 6148303,
"releases": {
"1.0": [
{
"comment_text": "",
"digests": {
"md5": "13d5461d4017dbf3a02c054f5ec7f3e4",
"sha256": "95bcfd934dc70a08496cb1697283b246a1d609b1236b389ae11210219439fa5f"
},
"downloads": -1,
"filename": "tregex_tobiasli-1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "13d5461d4017dbf3a02c054f5ec7f3e4",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 6237,
"upload_time": "2019-03-25T21:14:19",
"upload_time_iso_8601": "2019-03-25T21:14:19.078944Z",
"url": "https://files.pythonhosted.org/packages/65/7f/fc36adad4a1aead5d73fe3d1b3a8b53396eefa8e3fefe72637cf8ff55d0f/tregex_tobiasli-1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "0ff8f4b1e6412c864ccf2592a9976d02",
"sha256": "24d7e4e9d07c433e0013abd3841a1ab98f158629db52b396bb8888aaba29937d"
},
"downloads": -1,
"filename": "tregex-tobiasli-1.0.tar.gz",
"has_sig": false,
"md5_digest": "0ff8f4b1e6412c864ccf2592a9976d02",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4920,
"upload_time": "2019-03-25T21:14:21",
"upload_time_iso_8601": "2019-03-25T21:14:21.130072Z",
"url": "https://files.pythonhosted.org/packages/bd/15/32985404d7a07c1fbb9a8396823afafded381ba769e0a516bbe315097a5b/tregex-tobiasli-1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.0.1": [
{
"comment_text": "",
"digests": {
"md5": "7fee68744c29d192c9281297ce311c88",
"sha256": "e52f2f5d5afd00a0a25007db9f1e190fc2dea593edad053f285c6d69f24c71c7"
},
"downloads": -1,
"filename": "tregex-tobiasli-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "7fee68744c29d192c9281297ce311c88",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4803,
"upload_time": "2019-03-25T21:19:54",
"upload_time_iso_8601": "2019-03-25T21:19:54.227840Z",
"url": "https://files.pythonhosted.org/packages/9d/5c/8fccdce81d59c8ea278e4918eb61b1856a2b945abf135e93cf5bd332228f/tregex-tobiasli-1.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.0.2": [
{
"comment_text": "",
"digests": {
"md5": "a0e641b6e1996026f414ad459d2c6949",
"sha256": "f1c79e9977a8638373aa7df7610f5b48cc0e41b054355d233b5a9a88ead7d3ee"
},
"downloads": -1,
"filename": "tregex-tobiasli-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "a0e641b6e1996026f414ad459d2c6949",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4903,
"upload_time": "2019-10-27T12:23:33",
"upload_time_iso_8601": "2019-10-27T12:23:33.562779Z",
"url": "https://files.pythonhosted.org/packages/24/f1/afbeaebc428b8abfbdefa0a6ab359ed92058265b9761250fc3d4c0b03e17/tregex-tobiasli-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.0.3": [
{
"comment_text": "",
"digests": {
"md5": "bac6d132acfa2f80c520f6a25cd12328",
"sha256": "b5dcbf38aa42b1154f724fb63f540e3d26c06c01b94240543ca42d6e4866f0eb"
},
"downloads": -1,
"filename": "tregex-tobiasli-1.0.3.tar.gz",
"has_sig": false,
"md5_digest": "bac6d132acfa2f80c520f6a25cd12328",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4918,
"upload_time": "2019-11-16T21:14:16",
"upload_time_iso_8601": "2019-11-16T21:14:16.521960Z",
"url": "https://files.pythonhosted.org/packages/0e/e1/f60fb772a6e2a30977a69567a594268fae2f06b2f29f0ed0d2d1e99675af/tregex-tobiasli-1.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "bac6d132acfa2f80c520f6a25cd12328",
"sha256": "b5dcbf38aa42b1154f724fb63f540e3d26c06c01b94240543ca42d6e4866f0eb"
},
"downloads": -1,
"filename": "tregex-tobiasli-1.0.3.tar.gz",
"has_sig": false,
"md5_digest": "bac6d132acfa2f80c520f6a25cd12328",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4918,
"upload_time": "2019-11-16T21:14:16",
"upload_time_iso_8601": "2019-11-16T21:14:16.521960Z",
"url": "https://files.pythonhosted.org/packages/0e/e1/f60fb772a6e2a30977a69567a594268fae2f06b2f29f0ed0d2d1e99675af/tregex-tobiasli-1.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"vulnerabilities": []
}