如何在Python中去除字符串中的无用字符?

1 投票
4 回答
1929 浏览
提问于 2025-04-16 16:27

我有以下这个字符串:

text = 'adsfklaiin2007daf adf adflkajf;j 2008afadfkjkj'

我想得到:

2007 2008

有没有什么方法可以在Python中做到这一点?

4 个回答

5

在编程中,有时候我们需要把一些代码块放在一起,这样可以让我们的代码更整洁、更易于管理。比如说,当我们有一段代码需要重复使用时,我们可以把它放在一个“代码块”里,这样就可以在需要的时候直接调用,而不需要每次都写一遍。

这就像是把一些常用的工具放在一个工具箱里,想用的时候直接打开工具箱拿出来就行了,省时又方便。

在这个例子中,

import re
num = re.compile('[\d]*')
numbers = [number for number in num.findall(text) if number]
['2007', '2008']
就是一个代码块的占位符,表示这里应该有一段具体的代码。你可以把它想象成一个空盒子,等你需要的时候再把东西放进去。

7

这是一个使用正则表达式的经典例子。通过使用Python的re库,你可以这样做:

re.findall('\d{4}', "yourStringHere")

这样做会返回字符串中找到的所有四位数字的列表。你只需要根据需要调整你的正则表达式就可以了。

3
>>> import re
>>> text = 'adsfklaiin2007daf adf adflkajf;j 2008afadfkjkj'
>>> re.sub("[^0-9]"," ",text)
'          2007                   2008         '

我把输出的格式留给你自己去处理。

撰写回答