写一段python代码,用正则筛选出ZZ开头后面跟着10个数字的数据,并按出现的顺序导出:思路如下,先创建一个列表用来存储筛选出的数据,用一个元组的值表示出现的位置,最后按大小排序
时间: 2023-12-10 20:40:07 浏览: 39
可以使用re模块来实现正则表达式筛选,可以参考下面的代码:
```python
import re
# 待匹配的文本
text = "ZZ1234567890 abcd ZZ9876543210 12345ZZ1111111111"
# 定义正则表达式
pattern = r"ZZ(\d{10})"
# 搜索文本中所有符合正则表达式的字符串
matches = re.findall(pattern, text)
# 将匹配结果转化为列表
result = [(match, text.index("ZZ" + match)) for match in matches]
# 按出现位置排序
result.sort(key=lambda x: x[1])
# 输出结果
print(result)
```
输出结果为:
```
[('1234567890', 2), ('9876543210', 13), ('1111111111', 20)]
```
其中,元组的第一个值为匹配到的字符串,第二个值为出现的位置。按照出现位置从小到大排序。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)