Skip to main content

A Python package for finding similar strings with advanced formatting options.

Project description

MatchFinder

A Python package that finds your string's soulmates- quickly, effortlessly, and with style.

Welcome to MatchFinder! It's your go-to tool for finding similar strings in a list. Whether you're matching names, fixing typos, or building a search engine, MatchFinder makes it easy no extra libraries needed, just simple and powerful Python!
Developed primarily for fun and learning purposes.

Why MatchFinder?

1. Simple: No unnecessary imports and install - just good old Python.
2. Customizable: Choose your output style - csv, JSON or text, with or without scores.
3. Speed: Optimized to return results quickly, even for large datasets.
4. Fun: Because boring tools are for boring developers.

Installation

You can install MatchFinder directly from PyPI:

pip install MatchFinder

Usage

Here's how to get started with MatchFinder:

Import the package

from MatchFinder import get_similar

Example 1: Text Output

input_str = "Snake"  # Not exactly your ex, but close enough?
match_list = ["sneaky", "snake", "Snakeskin", "Slither", "your ex", "anaconda"]
n= 3

matches = get_similar(input_str, match_list, n,output_format="text")
print(matches)

output

['Match: snake', 'Match: sneaky', 'Match: Snakeskin']

Example 2: JSON Output

# Get similar strings in JSON format, including similarity scores
result = get_similar(input_str, match_list, n=2, include_score=True, output_format="json")
print(result)

output

[
  {'match': 'snakes', 'score': 0.83},
  {'match': 'snack', 'score': 0.6}
]

Example 3: Customizing Parameters

You can customize the Parameters

n - Maximum number of matches to return.(default 1)
output_format - Desired output format ("text" or "json" or "csv")
include_score - Whether to include similarity scores.
case_insensitive - Ignores case sensitivity of input text and match_list

# Change the number of matches and disable scores
result = get_similar("Python", ["Pithon", "Phyton", "Ruby", "Pytan"], n=2, include_score=False, output_format="text")
print(result)

output

['Match: Pithon', 'Match: Phyton']

Behind the Scenes

MatchFinder uses a custom similarity algorithm to calculate how "close" two strings are.
It's like Tinder for strings but with way less drama.

Contributions

Feel free to fork this project, add cool new features, or just drop by to say hi!

License

This project is licensed under the MIT License.

Get Matching Now!
Install MatchFinder today and make your strings feel a little less lonely.

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

MatchFinder-1.0.3.tar.gz (4.0 kB view details)

Uploaded Source

File details

Details for the file MatchFinder-1.0.3.tar.gz.

File metadata

  • Download URL: MatchFinder-1.0.3.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.11

File hashes

Hashes for MatchFinder-1.0.3.tar.gz
Algorithm Hash digest
SHA256 e0988a52a06c5adced362b0e86ffc523fb3ef969719a550edd34f2eba5945b39
MD5 59a2b27d07d1992ea77220325062098d
BLAKE2b-256 2c4174af534d6ef6112833770ab9a5d6b98cab0071ee751b21cc19b4b029e8bc

See more details on using hashes here.

Supported by

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