NumPy allowed · plain Python earns 10 bonus points
Implement basic text normalization and tokenization in pure Python -- the very first step of any classical NLP or search pre-processing pipeline.
Implement clean_and_tokenize(text): convert text to lowercase, replace any character that is not alphanumeric (a-z, 0-9) or whitespace with a space, and split into words by whitespace. Return a list of normalized string tokens.
clean_and_tokenize(text: str) -> list[str]