An improved version of original commonregex. Find all dates, times, emails, phone numbers, links, emails, ip addresses, prices, bitcoin address, and more in a string.
Project description
CommonRegex Improved
An improved version of commonly used regular expressions in Python
Inspired by and improved upon CommonRegex
This is a collection of commonly used regular expressions. This library provides a simple API interface to match the strings corresponding to specified patterns.
Installation
pip install --upgrade commonregex-improved
Usage
import crim as CommonRegex
text = "John, please get that article on www.linkedin.com to me by 5:00PM on Jan 9th 2012. 4:00 would be ideal, actually or 5:30 P.M. If you have any questions, You can reach me at (519)-236-2723x341 or get in touch with my associate at harold_smith@gmail.com. You can find my ip address at 127.0.0.1 or at 64.248.67.225. I also have a secret protected with md5 8a2292371ee60f8212096c06fe3335fd. The internal webpage to get the article from is https://internal.sharepoint.edu.au"
date_list = CommonRegex.dates(text)
# ['Jan 9th 2012']
time_list = CommonRegex.times(text)
# ['5:00PM', '4:00 ', '5:30 P.M.']
url_list = CommonRegex.links(text)
# ['www.linkedin.com', 'gmail.com', 'https://internal.sharepoint.edu.au']
phone_list = CommonRegex.phones_with_exts(text)
# ['(519)-236-2723x341']
ip_list = CommonRegex.ips(text)
# ['127.0.0.1', '64.248.67.225']
email_list = CommonRegex.emails(text)
# ['harold_smith@gmail.com']
md5_list = CommonRegex.md5_hashes(text)
# ['8a2292371ee60f8212096c06fe3335fd']
⚔️ Performance benchmark
CommonRegex is awesome!
So why re-implement the popular original commonregex project? The API calls to each of the regular expressions are really slow.
It takes 12 seconds for a total of 2999 calls to Dates function in the original version of CommonRegex. While the improved version of CommonRegex with the same number of calls merely takes 2 seconds.
You can find more detailed results about original and improved versions.
Features / Supported Methods
dates(text: str)
times(text: str)
phones(text: str)
phones_with_exts(text: str)
links(text: str)
emails(text: str)
ipv4s(text: str)
ipv6s(text: str)
ips(text: str)
not_known_ports(text: str)
prices(text: str)
hex_colors(text: str)
credit_cards(text: str)
visa_cards(text: str)
master_cards(text: str)
btc_address(text: str)
street_addresses(text: str)
zip_codes(text: str)
po_boxes(text: str)
ssn_numbers(text: str)
md5_hashes(text: str)
sha1_hashes(text: str)
sha256_hashes(text: str)
isbn13s(text: str)
isbn10s(text: str)
mac_addresses(text: str)
iban_numbers(text: str)
git_repos(text: str)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for commonregex_improved-1.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff2b9387a6ac097bb9815c5fad75cfaea61626cc1ad4b1674e6d497283641ea6 |
|
MD5 | 859772e16ae3e74d5d2f4d0c5d9e9daf |
|
BLAKE2b-256 | 49ca8b3a74f0e9421963b8c2d600c1895245471850a33c38d87316c0cb1831c5 |
Hashes for commonregex_improved-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71112e3bf0232aac48b8ec7ca255f99e551acec3ccca82864d799e624fe9813c |
|
MD5 | 8a139f161c8c0f53d64f580863ee955e |
|
BLAKE2b-256 | eefcca6a4de5c71e74541fddbca68bae66683ea831694910829388860d4f4d49 |