import re
s = ['-11.88', '<0.012541>', '-<3.14>', '<-2.98>', '<1.23', '<-abcdefg>']
pat = re.compile(r'^[-+]?(?P<o><)?[-+0-9.Ee]+(?(o)>|)$')
for i in s:
res = pat.match(i)
if res:
print(i +': Match')
else:
print(i +': No match')
aW1wb3J0IHJlCnMgPSBbJy0xMS44OCcsICc8MC4wMTI1NDE+JywgJy08My4xND4nLCAnPC0yLjk4PicsICc8MS4yMycsICc8LWFiY2RlZmc+J10KcGF0ID0gcmUuY29tcGlsZShyJ15bLStdPyg/UDxvPjwpP1stKzAtOS5FZV0rKD8obyk+fCkkJykKZm9yIGkgaW4gczoKCXJlcyA9IHBhdC5tYXRjaChpKQoJaWYgcmVzOgoJCXByaW50KGkgKyc6IE1hdGNoJykKCWVsc2U6CgkJcHJpbnQoaSArJzogTm8gbWF0Y2gnKQ==