Source: https://deptinfo.cnam.fr/~barthe/NFP108/exos-modelisation-regexp.pdf