예제 #1
0
def record2date(f100a, f210d):
    date = ""
    if (main.RepresentsInt(f100a[9:13]) == True):
        date = f100a[9:13]
    else:
        date = f210d
    date = clean_punctation(date)
    date = clean_letters(date)
    date = clean_spaces(date)
    return date
예제 #2
0
def record2scale(f123a):
    scale = f123a
    if (":" in scale):
        # C'est alors la zone non codée (texte libre)
        scale = scale.split(":")[1]
        for char in funcs.ponctuation:
            if (char != "," and char != "."):
                scale = scale.split(char)[0]
        scale = scale.replace(" ", "").replace(".", "").replace(",", "")
    if not main.RepresentsInt(scale):
        scale = ""
    return f123a
예제 #3
0
def record2date(coded_field, f210d, format="unimarc"):
    date = ""
    extract_coded_date = coded_field[9:13]
    if (format == "marc21"):
        extract_coded_date = coded_field[7:11]
    if main.RepresentsInt(extract_coded_date):
        date = extract_coded_date
    else:
        date = f210d
    date = clean_punctation(date)
    date = date.replace("°", "").replace("-", " ")
    date = clean_letters(date)
    date = clean_spaces(date)
    date = " ".join([el for el in date.split() if len(el) > 2])
    return date