Example #1
0
def special_dealing(chars, next_word):
    result = []
    buf = []
    end_with_alpha = False

    def dealing(buf):
        if buf != []:
            result.extend(hmm.output(''.join(buf)))

    for char in chars:
        if char in CUTTING:
            dealing(buf)
            result.append(char)
            buf = []
        else:
            if char in ALPHA:
                if not end_with_alpha:
                    end_with_alpha = True
                    dealing(buf)
                    buf = []
            elif end_with_alpha:
                result.append(''.join(buf))
                buf = []
                end_with_alpha = False
            buf.append(char)
    if end_with_alpha:
        result.append(''.join(buf))
    elif buf != []:
        result.extend(hmm.output(''.join(buf)))
    return result
Example #2
0
 def dealing(buf):
     if buf != []:
         result.extend(hmm.output(''.join(buf)))