diff -ur v17/ezmd.py v18/ezmd.py --- v17/ezmd.py 2019-10-02 20:42:54.000000000 +0900 +++ v18/ezmd.py 2019-10-02 22:05:00.000000000 +0900 @@ -106,6 +106,10 @@ s_idx = lambda s, p, dv=-1: s.index(p) if p in s else dv +def delim_pop(s, delim): + f = lambda lst: ( lst[0], delim.join( lst[1:] ) ) + return f( s.split(delim) ) + def do_v1v2(v1, v2): if v1 == 'img': return tag_new('img', {'src': v2}, '/') @@ -129,8 +133,8 @@ s3 = lst_strip( ( s[:ih], s[ih+len(h):it], s[it+len(t):] ) ) def mcv(s): - (v1, v2) = lst_strip( s.split('|') ) if '|' in s else (s, s) - return do_v1v2(v1, v2) + (v1, v2) = lst_strip( delim_pop(s, '|') ) if '|' in s else (s, s) + return do_v1v2(v1, v2) cvs = ( (lambda s: s), mcv, do_a_href ) f = lambda i: cvs[i]( s3[i] ) @@ -226,9 +230,7 @@ lst = parse_bar(s, 'td') def split_num(s): - s1 = s[1:] - i = s_idx(s1, ' ') - (t, s_) = ( s1[:i], s1[i+1:] ) if i >= 0 else (s, '') + (t, s_) = delim_pop( s[1:], ' ' ) return (t, s_) if t.isdigit() else ('', s) def th_td(s, md):