示例#1
0
def read_passage(words):
    """Return, as a string, any iambic-pentameter lines that start the
    given word-sequence."""
    meter = metercop.iamb * 5
    passage = ''
    for word in words:
        meter, rhyme = metercop.match_word(word, meter)
        if meter is None:
            break
        passage += ' ' + word
        if meter == ():
            passage += '\n'
            meter = metercop.iamb * 5
    return passage
示例#2
0
def versify(line_meter, tokens):
    acc = ''
    meter = line_meter
    for token in tokens:
        if not is_word(token):
            acc += token
        else:
            if meter == ():
                meter = line_meter
                acc += '<br/>'
            word = clean_word(token)
            meter, rhyme = metercop.match_word(word, meter)
            if meter is None:
                break
            acc += token
    return acc if meter == () else None