def html_subfields(line): assert line[-1] == '\x1e' encode = { 'k': lambda s: '<b>$%s</b>' % s, 'v': lambda s: esc(translate(s)), } return ''.join(encode[k](v) for k, v in split_line(line[2:-1]))
def html_subfields(marc): return ''.join('<b>' + k + '</b>' + esc(translate(v)) for k, v in marc)
def get_all_subfields(line): return ((i[0], translate(i[1:])) for i in line[3:-1].split('\x1f') if i)
def get_lower_subfields(line): if len(line) < 4: return [] # http://openlibrary.org/show-marc/marc_university_of_toronto/uoft.marc:2479215:693 return [translate(i[1:]) for i in line[3:-1].split('\x1f') if i and i[0].islower()]