(self, sentence, cut_all=False, HMM=True)
The main function that segments an entire sentence that contains
        Chinese characters into seperated words.

        Parameter:
            - sentence: The str(unicode) to be segmented.
            - cut_all: Model type. True for full pattern, False for accurate pattern.
            - HMM: Whether to use the Hidden Markov Model.
The main function that segments an entire sentence that contains
        Chinese characters into seperated words.
The main function that segments an entire sentence that contains Chinese characters into seperated words .
def cut(self, sentence, cut_all=False, HMM=True):
        '''
        The main function that segments an entire sentence that contains
        Chinese characters into seperated words.

        Parameter:
            - sentence: The str(unicode) to be segmented.
            - cut_all: Model type. True for full pattern, False for accurate pattern.
            - HMM: Whether to use the Hidden Markov Model.
        '''
        sentence = strdecode(sentence)

        if cut_all:
            re_han = re_han_cut_all
            re_skip = re_skip_cut_all
        else:
            re_han = re_han_default
            re_skip = re_skip_default
        if cut_all:
            cut_block = self.__cut_all
        elif HMM:
            cut_block = self.__cut_DAG
        else:
            cut_block = self.__cut_DAG_NO_HMM
        blocks = re_han.split(sentence)
        for blk in blocks:
            if not blk:
                continue
            if re_han.match(blk):
                for word in cut_block(blk):
                    yield word
            else:
                tmp = re_skip.split(blk)
                for x in tmp:
                    if re_skip.match(x):
                        yield x
                    elif not cut_all:
                        for xx in x:
                            yield xx
                    else:
                        yield x
def cut ( self , sentence , cut_all = False , HMM = True ) : sentence = strdecode ( sentence ) if cut_all : re_han = re_han_cut_all re_skip = re_skip_cut_all else : re_han = re_han_default re_skip = re_skip_default if cut_all : cut_block = self . __cut_all elif HMM : cut_block = self . __cut_DAG else : cut_block = self . __cut_DAG_NO_HMM blocks = re_han . split ( sentence ) for blk in blocks : if not blk : continue if re_han . match ( blk ) : for word in cut_block ( blk ) : yield word else : tmp = re_skip . split ( blk ) for x in tmp : if re_skip . match ( x ) : yield x elif not cut_all : for xx in x : yield xx else : yield x