基于规则的分词算法写个demo
时间: 2023-03-27 22:02:52 浏览: 65
好的,我可以回答这个问题。基于规则的分词算法是一种常见的中文分词方法,它通过预先定义一些规则来对文本进行分词。下面是一个简单的基于规则的分词算法的demo:
```python
# 定义分词规则
rules = {
'中国': ['中', '国'],
'北京': ['北', '京'],
'上海': ['上', '海'],
'广州': ['广', '州'],
'深圳': ['深', '圳']
}
# 定义分词函数
def segment(text):
result = []
i =
while i < len(text):
for j in range(len(text), i, -1):
word = text[i:j]
if word in rules:
result.extend(rules[word])
i = j
break
else:
result.append(text[i])
i += 1
return result
# 测试分词函数
text = '中国是一个伟大的国家,北京是中国的首都,上海、广州、深圳都是中国的重要城市。'
print(segment(text))
```
输出结果为:
```
['中', '国', '是', '一', '个', '伟', '大', '的', '国', '家', ',', '北', '京', '是', '中', '国', '的', '首', '都', ',', '上', '海', '、', '广', '州', '、', '深', '圳', '都', '是', '中', '国', '的', '重', '要', '城', '市', '。']
```
这个demo实现了一个简单的基于规则的分词算法,它可以将输入的中文文本按照预先定义的规则进行分词。