https://betterprogramming.pub/everything-you-need-to-know-about-regular-expressions-in-python-bbf96939b15