Code/app/plan_d_action/utils/interface/visualization.py
2025-06-04 14:21:55 +02:00

12 lines
561 B
Python

import re
from app.plan_d_action.utils.interface import CORRESPONDANCE_COULEURS
def remplacer_par_badge(markdown_text, correspondance=CORRESPONDANCE_COULEURS):
# Échappe les mots à remplacer s'ils contiennent des accents ou espaces
for mot, couleur in correspondance.items():
# Utilise des bords de mots (\b) pour éviter les remplacements partiels
pattern = r'\b' + re.escape(mot) + r'\b'
remplacement = f":{couleur}-badge[{mot}]"
markdown_text = re.sub(pattern, remplacement, markdown_text)
return markdown_text