Spaces:
Running
Running
File size: 658 Bytes
6bcb009 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
import re
from datetime import datetime
template_functions = {
"timestamp": lambda data: str(int(datetime.now().timestamp())),
"i": lambda data: data.get("index", False),
"file": lambda data: data.get("file", False),
"date": lambda data: datetime.now().strftime("%Y-%m-%d"),
"time": lambda data: datetime.now().strftime("%H-%M-%S"),
}
def parse(text: str, data: dict):
pattern = r"\{([^}]+)\}"
matches = re.findall(pattern, text)
for match in matches:
replacement = template_functions[match](data)
if replacement is not False:
text = text.replace(f"{{{match}}}", replacement)
return text
|