Python 删除包含特定字母的单词
假设我有一根像Python 删除包含特定字母的单词,python,string,pandas,Python,String,Pandas,假设我有一根像 test = "hello Everyone! My name is Dan." 我想做一个函数,删除所有包含特定字母的单词,如 那我的绳子就断了 "hello My name is Dan." 我通过test.split(“”)尝试了这个方法,如果它包含特定的字母,则将其替换为'。然而,由于我有相当长的文档,它似乎有点低效 有没有其他简单紧凑的方法来解决这个问题 提前感谢!=] 如果在一个系列中的许多条目上执行此操作,可以执行以下操作: df['ser'] = df['se
test = "hello Everyone! My name is Dan."
我想做一个函数,删除所有包含特定字母的单词,如代码>
那我的绳子就断了
"hello My name is Dan."
我通过test.split(“”)
尝试了这个方法,如果它包含特定的字母,则将其替换为'
。然而,由于我有相当长的文档,它似乎有点低效
有没有其他简单紧凑的方法来解决这个问题
提前感谢!=] 如果在一个系列中的许多条目上执行此操作,可以执行以下操作:
df['ser'] = df['ser'].str.replace(r'\w+[!.,]', '')
这将用空白替换方括号内任何字符后面的任何单词,对于熊猫系列来说,这是一种很好的矢量化方法 我相信你这样做是最快的方式,但你可能想在其中使用一些更快的关键字。试试这个:
test = "hello Everyone! My name is Dan."
words = test.split(" ")
words = [word for word in words if not "!" in word]
answer = " ".join(words)
对字符串使用replace方法,即`txt=“大家好!我的名字是丹。”
x=txt.replace(“所有人!”,“”)
打印(x)
`您可以使用两种方法,split
和join
。所以基本上你的函数只有一行(return语句)
这是你作业的一部分吗?不要欺骗人,试一下自己,只有当你至少试过的时候才来这里;)
另外,我建议您使用REPL,这是一个极好的Python和其他语言的实时在线解释器。在那里检查这个解决方案
您可以列出一个列表,将您的特定字母放在其中,然后使用for将其替换为空格。像这样:
specific_chars=[';'、':'、'!'、“*”]
test=“大家好!我叫丹。”
对于特定字符中的i:
test_string=test.replace(i,“”)
打印(测试字符串)
由于您在问题中包含了pandas
标记,请确保包含数据帧的示例。这不是动态的,因为在类似txt='嘿,这里!'代码>你将返回嘿代码>但是它应该返回嘿
嘿Eric,谢谢。应该是与字符串的字符匹配的正则表达式
def removeChar(string , char):
return "".join(string.split(char))
result = removeChar("hello Everyone! My name is Dan.",'!')
print (result)