INNER CODE UNIT · Python
extract_eu_article
lawve-ai/awesome-legal-skills · skills/ktzr-polskie-umowy-gospodarcze-adam-piotrowski/tools/legal-cite/legal_cite/core.py:202
def extract_eu_article(text: str, art: str, ustep: str | None) -> str | None:
m = re.search(rf'\bArtykuł\s+{re.escape(art)}\b', text, re.IGNORECASE)
if not m:
return None
nxt = re.search(r'\bArtykuł\s+\d+\b', text[m.end():], re.IGNORECASE)
end = m.end() + nxt.start() if nxt else min(m.start() + 5000, len(text))
art_text = text[m.start():end].strip()
return _cut_ustep(art_text, ustep) if ustep else art_text
async def verify_article(citation: str) -> str:
"""Zwraca dokładne brzmienie cytowanego przepisu ze źródła oficjalnego.
Format: 'art. N [ust. M] KOD' (np. 'art. 45 u.k.k.', 'art. 28 ust. 3 RODO')."""
parsed = parse_citation(citation)
if not parsed:
return (f"❌ Nierozpoznany format: '{citation}'\n"
f"Użyj: 'art. N [ust. M] KOD' — np. 'art. 45 u.k.k.'\n"
f"Lista kodów: list_acts().")