如何从Python中的字符串中删除以“:”结尾的所有单词?

时间:2010-04-07 00:13:59

标签: python regex

我想知道如何从Python中的字符串中删除动态字。

在单词的末尾始终有一个“:”,有时在字符串中有多个。我想删除所有出现的“word:”。

谢谢! : - )

3 个答案:

答案 0 :(得分:11)

使用正则表达式。

import re
blah = "word word: monty py: thon"
answer = re.sub(r'\w+:\s?','',blah)
print answer

这也会在冒号后拉出一个可选空格。

答案 1 :(得分:0)

这将删除所有以“:”结尾的单词:

def RemoveDynamicWords(s):
    L = []
    for word in s.split():
        if not word.endswith(':'):
            L.append(word)
    return ' '.join(L)
print RemoveDynamicWords('word: blah')

或使用生成器表达式:

print ' '.join(i for i in word.split(' ') if not i.endswith(':'))

答案 2 :(得分:0)

[ chunk for chunk in line.split() if not chunk.endswith(":") ]

这将创建一个列表。你可以加入他们。