替换句子中的多个不同的词—— python 实现

Posted Newsteinwell

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了替换句子中的多个不同的词—— python 实现相关的知识,希望对你有一定的参考价值。

对一个句子中的多处不同的词的替换,可以采用依次将句子中的每个词分别和词典进行匹配,匹配成功的进行替换来实现,可是这种方法直觉上耗时就很长,对于一个篇幅很长的文档,会花费很多的时间,这里介绍一种可以一次性替换句子中多处不同的词的方法,代码如下:

#!/usr/bin/env python
# coding=utf-8
import re

def multiple_replace(text, idict):  
    rx = re.compile(|.join(map(re.escape, idict)))  
    def one_xlat(match):  
        return idict[match.group(0)]  
    return rx.sub(one_xlat, text) 

idict={3:2, apples:peaches}
    
textBefore = I bought 3 pears and 4 apples
textAfter= multiple_replace(textBefore,idict)

print (textBefore)
print (textAfter)

运行结果为:

 

I bought 3 pears and 4 apples
I bought 2 pears and 4 peaches

 

可见,multiple_replace() 函数的返回值也是一个字符串(句子),且一次性将 "3" 替换为 "2",将 "apples" 替换为 "peaches"

参考: http://blog.csdn.net/huludan/article/details/50925735

 

以上是关于替换句子中的多个不同的词—— python 实现的主要内容,如果未能解决你的问题,请参考以下文章

如何替换包含完整句子的列的每一行中的多个单词?

从数据库中替换句子中的单词(Python / Django)

使用python将句子中的每个单词替换为单词索引

用单个句号替换多个句号

项目应用自然语言处理-python实现jieba中文分词

python结巴(jieba)分词