Python 搜索特定字符并筛选

Python 搜索特定字符并筛选,python,regex,Python,Regex,我从一个源中得到一个列表,其中列表的一些元素附加了换行符和制表符 这些转义字符必须从列表中删除 例如,“l1”是来自不同来源的列表 l1=["12358\n\t\t", "69874\n\t\t\t\t", "25476\n\t"] 所需的列表是l2 l2=[12358,69874,25476] 我尝试使用正则表达式来实现这一点,但没有成功 有人能帮我把结果变成“l2”吗?你可以使用.replace()删除结尾的字符,然后使用int

我从一个源中得到一个列表,其中列表的一些元素附加了换行符和制表符

这些转义字符必须从列表中删除

例如,“l1”是来自不同来源的列表

l1=["12358\n\t\t", "69874\n\t\t\t\t", "25476\n\t"]
所需的列表是l2

l2=[12358,69874,25476]
我尝试使用正则表达式来实现这一点,但没有成功


有人能帮我把结果变成“l2”吗?

你可以使用
.replace()
删除结尾的字符,然后使用
int()
将字符串类型转换为整数

l2 = []
for i in range(len(l1)):
    l1[i] = l1[i].replace('\n','').replace('\t','')
    l2.append(int(l1[i]))

如果还有其他字符,也可以用类似的方式替换。

您可以使用
.replace()
删除末尾的字符,然后使用
int()
将字符串类型转换为整数

l2 = []
for i in range(len(l1)):
    l1[i] = l1[i].replace('\n','').replace('\t','')
    l2.append(int(l1[i]))

如果还有其他字符,也可以用类似的方式替换它们。

您可以替换这些字符

l2 = list(map(lambda x: int(x.replace('\n', '').replace('\t', '')), l1))

您可以替换这些字符

l2 = list(map(lambda x: int(x.replace('\n', '').replace('\t', '')), l1))

查看此代码:

import re

regobj = re.compile(r'\d+')

l1=["12358\n\t\t", "69874\n\t\t\t\t", "25476\n\t"]
li = [int(regobj.search(i).group()) for i in l1]
print(li)

查看此代码:

import re

regobj = re.compile(r'\d+')

l1=["12358\n\t\t", "69874\n\t\t\t\t", "25476\n\t"]
li = [int(regobj.search(i).group()) for i in l1]
print(li)
也许是这样

l1=["12358\n\t\t", "69874\n\t\t\t\t", "25476\n\t"]
[int(x) for x in l1]
它给出:

[12358, 69874, 25476]
也许是这样

l1=["12358\n\t\t", "69874\n\t\t\t\t", "25476\n\t"]
[int(x) for x in l1]
它给出:

[12358, 69874, 25476]