2024-04-20 12:26:49 发布
网友
我有一个由单词和数字组成的列表。让我们说:
list1 = ['1','100', 'Stack', 'over','flow']
从这个列表中,我想过滤所有的数字和保留的话。我已经导入了re并找到了它的re代码,即:
[^0-9]
然而,我不知道如何实现这一点,以便我得到如下列表。你知道吗
result = ['Stack', 'over', 'flow']
不需要regex,使用^{}:
list1 = ['1','100', 'Stack', 'over','flow'] print([i for i in list1 if not i.isdigit()])
退货:
['Stack', 'over', 'flow']
通过列表理解,您可以很好地做到这一点:
list1 = ['1','100', 'Stack', 'over','flow'] list2 = [i for i in list1 if not i.isdigit()]
如果出于任何原因,您确实希望使用regex来完成此操作(可能您有更复杂的筛选条件),则可以使用以下方法:
import re list1 = ['1','100', 'Stack', 'over','flow'] list2 = [i for i in list1 if re.fullmatch('[^0-9]+', i)]
使用list-comprehension和字符串方法isdigit:
list-comprehension
isdigit
[elem for elem in list1 if not elem.isdigit()]
不需要regex,使用^{} :
退货:
通过列表理解,您可以很好地做到这一点:
如果出于任何原因,您确实希望使用regex来完成此操作(可能您有更复杂的筛选条件),则可以使用以下方法:
使用
list-comprehension
和字符串方法isdigit
:相关问题 更多 >
编程相关推荐