import re def footnote(data, fol_num): a = 1 tou = "

" namu = [] pop_re = re.compile('(?:\[\*([^\s]*)(?:\s((?:(?!\[|\]).)*))?\]|(\[각주\]))') while 1: b = pop_re.search(data) if b: results = b.groups() try: if not results[1] and results[0]: i = 0 while 1: try: if namu[i] == results[0]: none_this = 0 break else: i += 2 except: none_this = 1 break if none_this == 0: data = pop_re.sub("[" + results[0] + "]" + \ "", data, 1) else: data = pop_re.sub("#d#" + results[0] + "#/d#", data, 1) else: if(results[0]): namu += [results[0]] namu += [results[1]] tou += "[" + results[0] + "] " + results[1] + "
" data = pop_re.sub("#d#" + results[0] + "#/d#" + \ "", data, 1) else: tou += "[" + str(a) + "] " + results[1] + "
" data = pop_re.sub('#d#' + str(a) + '#/d#' + \ '', data, 1) a += 1 fol_num += 2 except: tou += '
' if tou == "

": tou = "" else: tou = re.sub('#d#(?P(?:(?!#\/d#).)*)#\/d#', '[\g]', tou) data = pop_re.sub("
" + tou, data, 1) tou = "

" else: tou += '
' if tou == "

": tou = "" else: tou = re.sub('#d#(?P(?:(?!#\/d#).)*)#\/d#', '[\g]', tou) break data = re.sub('#d#(?P(?:(?!#\/d#).)*)#\/d#', '[\g]', data) data = re.sub("\[각주\](?:(?:
| |\r|\n)+)?$", "", data) data = re.sub("(?:(?:
| |\r|\n)+)$", "", data) data += tou return data