搜索特定字符并筛选



我从一个源获得一个列表,其中列表的一些元素被添加了换行符和制表符。

那些转义符必须从列表中删除。

例如";l1";是一个来自不同来源的列表。

l1=["12358ntt", "69874ntttt", "25476nt"]

所需列表为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]))

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

也许是这样?

l1=["12358ntt", "69874ntttt", "25476nt"]
[int(x) for x in l1]

它给出:

[12358, 69874, 25476]

您可以替换这些字符。

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

查看此代码:

import re
regobj = re.compile(r'd+')
l1=["12358ntt", "69874ntttt", "25476nt"]
li = [int(regobj.search(i).group()) for i in l1]
print(li)

最新更新