使用python,从excel表格中10000行数据中逐行提取“简要案情”列内杂乱内容中的身份证号码
时间: 2024-06-09 14:10:19 浏览: 176
可以使用Python中的pandas库来读取Excel表格,并使用正则表达式来匹配身份证号码。以下是一个示例代码:
```python
import pandas as pd
import re
# 读取Excel表格
data = pd.read_excel('data.xlsx')
# 遍历每一行数据
for index, row in data.iterrows():
# 从“简要案情”列中提取身份证号码
text = row['简要案情']
pattern = r'\d{17}[\d|X]|\d{15}' # 正则表达式匹配身份证号码
match = re.search(pattern, text)
if match:
# 打印身份证号码
print(match.group())
```
上述代码中,首先使用pandas库读取Excel表格,然后使用iterrows()方法遍历每一行数据。对于每一行数据,使用正则表达式匹配身份证号码,并打印出来。注意,在正则表达式中,`\d{17}[\d|X]|\d{15}`表示匹配18位或15位身份证号码。
相关问题
使用python 从10000行数据中逐行提取某一列杂乱内容中的身份证号码
可以使用Python中的正则表达式来提取身份证号码。假设身份证号码在数据中的第5列,可以使用以下代码:
```python
import re
with open('data.csv', 'r') as file:
for line in file:
row = line.strip().split(',')
id_number = re.findall(r'\d{17}[\d|x]|\d{15}', row[4])
if id_number:
print(id_number[0])
```
解释:
- `re.findall(r'\d{17}[\d|x]|\d{15}', row[4])`:通过正则表达式查找身份证号码,`\d{17}[\d|x]` 匹配18位身份证号码(最后一位可能是数字或字母x),`\d{15}` 匹配15位身份证号码。
- `if id_number:`:判断是否找到身份证号码,避免输出空结果。
- `print(id_number[0])`:输出身份证号码。
需要将代码中的 `data.csv` 替换为实际数据文件的文件名或路径。
使用python 从10000行数据中逐行提取某一列中的身份证号码
假设你要提取的身份证号码在第二列,可以使用如下代码:
```python
import csv
with open('data.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
id_number = row[1] # 获取第二列的身份证号码
print(id_number)
```
其中,`data.csv` 是你要读取的文件名,可以根据实际情况进行修改。如果你的文件不是 csv 格式,可以根据实际情况修改文件读取方式。
阅读全文