📌  相关文章
📜  python 从字符串中删除除数字之外的所有内容 - Python (1)

📅  最后修改于: 2023-12-03 15:04:14.590000             🧑  作者: Mango

Python 从字符串中删除除数字之外的所有内容

如果你需要从一个字符串中删除除数字之外的所有内容,Python 提供了几种简单的方法可以实现这个目的。

方法一:使用正则表达式
import re
 
string = "这是一个包含数字1、2、3的字符串,还有一些其他内容!"
result = re.sub(r'\D', '', string)
print(result) # 结果为123

上面的代码使用了 Python 的 re 模块中的 sub 方法,该方法用于在字符串中替换匹配正则表达式的部分。正则表达式 \D 匹配除了数字以外的任意字符,因此我们可以使用该表达式将字符串中除数字以外的所有字符替换为空字符串。

方法二:使用列表解析式
string = "这是一个包含数字1、2、3的字符串,还有一些其他内容!"
result = ''.join([i for i in string if i.isdigit()])
print(result) # 结果为 123

上述代码使用了 Python 的列表解析式,该解析式在遍历字符串时只返回数字字符,并将这些字符连接成单个字符串。

方法三:使用循环和 isdigit() 函数
string = "这是一个包含数字1、2、3的字符串,还有一些其他内容!"
result = ''
for i in string:
    if i.isdigit():
        result += i
print(result) # 结果为 123

上面的代码使用了循环来遍历字符串,对于每个字符,我们使用内置的 isdigit() 函数来检查是否为数字字符,如果是数字则将其添加到结果中。

以上三种方法都可以从字符串中删除非数字字符,具体方法可以根据个人喜好来选择。