import re
rx = r"^#(\d+(?:,\d+)?)\s*([^(]*)"
s = "#31,456 in this category (Top 100 of category)"
m = re.search(rx, s)
if m:
print("Group 1: {}; Group 2: {}".format(m.group(1), m.group(2)))
aW1wb3J0IHJlCnJ4ID0gciJeIyhcZCsoPzosXGQrKT8pXHMqKFteKF0qKSIKcyA9ICIjMzEsNDU2IGluIHRoaXMgY2F0ZWdvcnkgKFRvcCAxMDAgb2YgY2F0ZWdvcnkpIgptID0gcmUuc2VhcmNoKHJ4LCBzKQppZiBtOgoJcHJpbnQoIkdyb3VwIDE6IHt9OyBHcm91cCAyOiB7fSIuZm9ybWF0KG0uZ3JvdXAoMSksIG0uZ3JvdXAoMikpKQ==