在 Python 中从字符串中删除某些字符

Muhammad Waiz Khan 2023年10月10日
  1. 在 Python 中使用 string.replace() 方法从字符串中删除某些字符
  2. 在 Python 中使用 string.join() 方法从字符串中删除某些字符
  3. 在 Python 中使用 re.sub() 方法从字符串中删除某些字符
在 Python 中从字符串中删除某些字符

本教程将解释在 Python 中从字符串中删除某些字符的各种方法。在许多情况下,我们需要从文本中删除标点符号或某个特殊字符,比如为了数据清理。

在 Python 中使用 string.replace() 方法从字符串中删除某些字符

string.replace() 方法在将第一个字符串参数替换为第二个字符串参数后返回一个新的字符串。要使用 string.replace() 方法从字符串中删除某些字符,我们可以使用 for 循环从一个字符串中每次迭代删除一个字符。

由于我们要删除字符而不是替换它们,我们将传递一个空字符串作为第二个参数。下面的示例代码演示了如何使用 string.replace() 方法从字符串中删除字符。

string = "Hey! What's up?"
characters = "'!?"

for x in range(len(characters)):
    string = string.replace(characters[x], "")

print(string)

输出:

Hey Whats up

在 Python 中使用 string.join() 方法从字符串中删除某些字符

string.join(iterable) 方法将可迭代对象的每个元素与 string 连接起来,并返回一个新的字符串。要使用 string.join() 方法从字符串中删除某些字符,我们必须遍历整个字符串,并从字符串中删除我们需要删除的字符。下面的示例代码演示了我们如何在 Python 中使用 string.join() 进行操作。

string = "Hey! What's up?"
characters = "'!?"

string = "".join(x for x in string if x not in characters)
print(string)

输出:

Hey Whats up

在 Python 中使用 re.sub() 方法从字符串中删除某些字符

re 模块的 re.sub(pattern, repl, string, count) 方法在将正则表达式 pattern 替换为原始字符串中的 repl 值后,返回一个新的字符串。而 count 是指我们要从字符串中替换 pattern 的次数。

由于我们需要删除而不是替换任何字符,所以 repl 将等于一个空字符串。下面的代码示例演示了我们如何在 Python 中使用 re.sub() 方法来替换字符串中的字符。

import re

string = "Hey! What's up?"
string = re.sub("\!|'|\?", "", string)
print(string)

输出:

Hey Whats up

相关文章 - Python String