Expynent

一个提供正则表达式模式的库。如果你讨厌写正则表达式,那么 expynent 可以帮到你。「A library that provides regular expression patterns. If you hate to write regular expressions, then expynent can help you.」

Github stars Tracking Chart

Expynent - Common Regular Expression

Build Status
codecov
PyPI version

Expynent is a tiny library that provides common regular expression patterns. This can be useful if you don't want to
write regular expression manually. Also you can use this library as fixture for testing framework like a py.test.

Installation

 ~  pip install expynent

Usage

Just import the pattern that you want:

import re
from expynent.patterns import ZIP_CODE

if re.match(ZIP_CODE['RU'], '43134'):
    print('match')
else:
    print('not match')
    
# Output: 'not match'

also you can use compiled patterns:

from expynent.compiled import URL

url = 'http://foo.com/blah_blah_(wikipedia)_(again)'

if URL.match(url):
    print('valid')
else:
    print('invalid')
    
# Output: 'valid'

Supported patterns

You can look at the list of supported patterns below:

  1. BITCOIN_ADDRESS
  2. CREDIT_CARD
  3. CREDIT_CARD_STRICT
  4. EMAIL_ADDRESS
  5. ETHEREUM_ADDRESS
  6. FLOAT_NUMBER
  7. HEX_VALUE
  8. IP_V4
  9. IP_V6
  10. IRC
  11. ISBN
  12. ISO_8601_DATETIME
  13. LATITUDE
  14. LICENSE_PLATE
  15. LONGITUDE
  16. MAC_ADDRESS
  17. PGP_FINGERPRINT
  18. PHONE_NUMBER
  19. ROMAN_NUMERALS
  20. SLUG
  21. TIME_24H_FORMAT
  22. URL
  23. UUID
  24. YANDEX_MONEY
  25. ZIP_CODE
  26. ETHEREUM_HASH

Contributing

Your contributions are always welcome! Please take a look at the contribution guidelines first.

Attention

This is an experimental project and it's mean that we do not guarantee stability. We try to write tests for
all expressions, but we cannot guarantee the perfect operation of regular expressions because it is impossible to cover all cases.

Licence

BSD 3-Clause License

Main metrics

Overview
Name With Ownerlk-geimfari/expynent
Primary LanguagePython
Program languagePython (Language Count: 2)
Platform
License:BSD 3-Clause "New" or "Revised" License
所有者活动
Created At2016-10-21 13:51:09
Pushed At2021-09-06 07:34:28
Last Commit At2021-09-06 10:34:28
Release Count4
Last Release Namev2.0.0 (Posted on )
First Release Namev0.0.5a (Posted on )
用户参与
Stargazers Count384
Watchers Count15
Fork Count52
Commits Count224
Has Issues Enabled
Issues Count16
Issue Open Count1
Pull Requests Count57
Pull Requests Open Count0
Pull Requests Close Count13
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private