中等
技术面试0 次浏览

微软的搜索引擎业务需要对网页进行分词处理。请设计一个简单的分词算法,使用 Python 实现,将输入的句子按空格和标点符号进行分词。

微软中国算法工程师
分词算法Python字符串处理

答题要点

推荐的答题框架:可采用字符串处理的方法,先定义分词的规则,再对输入的句子进行处理。关键要点如下:1. 确定分词的分隔符,包括空格和常见的标点符号。2. 使用正则表达式或字符串分割方法进行分词。3. 去除分词结果中的空字符串。4. 处理特殊情况,如连续的标点符号。示例话术:我们可以使用正则表达式来定义分词的规则,将输入的句子按空格和标点符号进行分割。首先,我们定义一个包含空格和常见标点符号的正则表达式。然后,使用 `re.split()` 方法对句子进行分割。最后,去除分割结果中的空字符串。以下是实现代码: python import re def tokenize(sentence): pattern = r'[\s\.,?!:;]+' tokens = re.split(pattern, sentence) return [token for token in tokens if token]