from typing import List


def str2ngrams(string: str) -> List[str]:
    """Converts a string to a list of ngrams (monogram, bigram, trigram)."""
    ngrams = string.split()  # monograms
    token_list = string.split()
    if len(token_list) > 2:
        ngrams += [
            w1 + " " + w2 + " " + w3
            for w1, w2, w3 in zip(token_list[:-2], token_list[1:-1], token_list[2:])
        ]  # trigrams
    if len(token_list) > 1:
        ngrams += [
            w1 + " " + w2 for w1, w2 in zip(token_list[:-1], token_list[1:])
        ]  # bigrams
    return ngrams