import re


def intcomma(value):
    """
    Converts an integer to a string containing commas every three digits.
    For example, 3000 becomes '3,000' and 45000 becomes '45,000'.
    """
    value = str(value)
    new = re.sub("^(-?\d+)(\d{3})", '\g<1>,\g<2>', value)
    if value == new:
        return new
    else:
        return intcomma(new)