{"id":15010035,"url":"https://github.com/lk-geimfari/expynent","last_synced_at":"2025-10-03T19:30:32.632Z","repository":{"id":47263769,"uuid":"71569142","full_name":"lk-geimfari/expynent","owner":"lk-geimfari","description":"A library that provides regular expression patterns. If you hate to write regular expressions, then expynent can help you.","archived":true,"fork":false,"pushed_at":"2021-09-06T07:34:28.000Z","size":246,"stargazers_count":384,"open_issues_count":1,"forks_count":52,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-01-14T19:55:21.854Z","etag":null,"topics":["compiled","lib","patterns","regex","regex-pattern","test","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lk-geimfari.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"custom":"https://isaak.dev/donate/"}},"created_at":"2016-10-21T13:51:09.000Z","updated_at":"2024-12-27T17:42:04.000Z","dependencies_parsed_at":"2022-08-29T20:21:25.089Z","dependency_job_id":null,"html_url":"https://github.com/lk-geimfari/expynent","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lk-geimfari%2Fexpynent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lk-geimfari%2Fexpynent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lk-geimfari%2Fexpynent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lk-geimfari%2Fexpynent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lk-geimfari","download_url":"https://codeload.github.com/lk-geimfari/expynent/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235173200,"owners_count":18947455,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["compiled","lib","patterns","regex","regex-pattern","test","testing"],"created_at":"2024-09-24T19:29:36.298Z","updated_at":"2025-10-03T19:30:27.301Z","avatar_url":"https://github.com/lk-geimfari.png","language":"Python","funding_links":["https://isaak.dev/donate/"],"categories":["Feature Extraction"],"sub_categories":["Text/NLP"],"readme":"## Expynent - Common Regular Expression\n\n[![Build Status](https://travis-ci.org/lk-geimfari/expynent.svg?branch=master)](https://travis-ci.org/lk-geimfari/expynent)\n[![codecov](https://codecov.io/gh/lk-geimfari/expynent/branch/master/graph/badge.svg)](https://codecov.io/gh/lk-geimfari/expynent)\n[![PyPI version](https://badge.fury.io/py/expynent.svg)](https://badge.fury.io/py/expynent)\n\n**Expynent** is a tiny library that provides common regular expression patterns. This can be useful if you don't want to \nwrite regular expression manually. Also you can use this library as [fixture](https://docs.pytest.org/en/latest/fixture.html) for testing framework like a [py.test](https://docs.pytest.org/en/latest/).\n\n## Installation\n\n```\n ~  pip install expynent\n```\n\n\n## Usage\nJust import the pattern that you want:\n\n```python\nimport re\nfrom expynent.patterns import ZIP_CODE\n\nif re.match(ZIP_CODE['RU'], '43134'):\n    print('match')\nelse:\n    print('not match')\n    \n# Output: 'not match'\n\n```\nalso you can use compiled patterns:\n```python\nfrom expynent.compiled import URL\n\nurl = 'http://foo.com/blah_blah_(wikipedia)_(again)'\n\nif URL.match(url):\n    print('valid')\nelse:\n    print('invalid')\n    \n# Output: 'valid'\n```\n\n## Supported patterns\n\nYou can look at the list of supported patterns below:\n\n1. `BITCOIN_ADDRESS`\n2. `CREDIT_CARD`\n3. `CREDIT_CARD_STRICT`\n4. `EMAIL_ADDRESS`\n5. `ETHEREUM_ADDRESS`\n6. `FLOAT_NUMBER`\n7. `HEX_VALUE`\n8. `IP_V4`\n9. `IP_V6`\n10. `IRC`\n11. `ISBN`\n12. `ISO_8601_DATETIME`\n13. `LATITUDE`\n14. `LICENSE_PLATE`\n15. `LONGITUDE`\n16. `MAC_ADDRESS`\n17. `PGP_FINGERPRINT`\n18. `PHONE_NUMBER`\n19. `ROMAN_NUMERALS`\n20. `SLUG`\n21. `TIME_24H_FORMAT`\n22. `URL`\n23. `UUID`\n24. `YANDEX_MONEY`\n25. `ZIP_CODE`\n26. `ETHEREUM_HASH`\n\n## Contributing\nYour contributions are always welcome! Please take a look at the [contribution](https://github.com/lk-geimfari/expynent/blob/master/CONTRIBUTING.md) guidelines first.\n\n## Attention\nThis is an **experimental** project and it's mean that we do not guarantee stability. We try to write tests for\nall expressions, but we cannot guarantee the perfect operation of regular expressions because it is impossible to cover all cases.\n\n## Licence \n[BSD 3-Clause License](https://raw.githubusercontent.com/lk-geimfari/expynent/master/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flk-geimfari%2Fexpynent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flk-geimfari%2Fexpynent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flk-geimfari%2Fexpynent/lists"}