Regex Gelişmiş Desenleri
Adlandırılmış gruplar, ileri bakış ve bulanık eşleştirme.
Genel Bakış
Regex paketi, python'un yerleşik re'sinin yerine bir düşüş görevi görür.
Bu, bulanık arama ağaçlarını ve izole edilmiş adlandırılmış gruplandırma diktelerini kapsamlı bir şekilde destekler.
Kod ve Yürütme Çıkışı
Bir güvenlik günlüğü düzenini ayrıştırır ve 1 ikame bulanık eşleştirme gerçekleştirir.
fuzzy.py
Editör'de deneyinimport regex
# Named capture groups — parse a log line
log = "2025-07-04 14:32:01 ERROR [auth] Login failed for user@example.com"
pattern = r"(?P<date>\d{4}-\d{2}-\d{2}) (?P<time>\d{2}:\d{2}:\d{2}) (?P<level>\w+)\s+\[(?P<module>\w+)\] (?P<message>.+)"
m = regex.match(pattern, log)
if m:
print("Match Breakdown:")
for k, v in m.groupdict().items():
print(f" {k:<10}: {v}")
# Fuzzy matching (allows 1 substitution)
print("\nFuzzy search for 'colour' (≤1 error):")
text = "I prefer colour and cilor and colouur"
for hit in regex.finditer(r"(?:colour){s<=1}", text):
print(f" found '{hit.group()}' at {hit.span()}")Terminal Çıkışı
Match Breakdown:
date : 2025-07-04
time : 14:32:01
level : ERROR
module : auth
message : Login failed for user@example.com
Fuzzy search for 'colour' (≤1 error):
found 'colour' at (9, 15)
found 'colouur' at (30, 37)Adım Adım Uygulama
- Regex metin verilerini ayrıştırıyor
- Bulanık kütük kazıma
- Dize normalleştirme kalıpları