python提取具有给定正则表达式格式的文件[重复]
Posted
技术标签:
【中文标题】python提取具有给定正则表达式格式的文件[重复]【英文标题】:python extract a file with the given regex format [duplicate] 【发布时间】:2020-07-01 08:07:42 【问题描述】:我试图提取包含 EOB_FILE 的文件
例如我有类似的东西
s = "path Omega/CC/Pune/SYNTT/EOB_PROCESSED_BY_OCR/EOB_FILE/0A225618045646F2AEEFC23E74CAC253/0A225618045646F2AEEFC23E74CAC253_page1.json"
我怎样才能只得到0A225618045646F2AEEFC23E74CAC253_page1.json
的文件名
我试过的代码:
val = re.findall(r'([^.]*EOB_FILE[^.]*)', s)
val
['path Omega/CC/Pune/SYNTT/EOB_PROCESSED_BY_OCR/EOB_FILE/0A225618045646F2AEEFC23E74CAC253/0A225618045646F2AEEFC23E74CAC253_page1']
预期输出:
0A225618045646F2AEEFC23E74CAC253_page1.json
【问题讨论】:
【参考方案1】:你可以使用pathlib.Path:
from pathlib import Path
Path(s).name
输出:
'0A225618045646F2AEEFC23E74CAC253_page1.json'
检查EOB_FILE
是否在您可以使用的路径中:
'EOB_FILE' in Path(s).parts
或:
'EOB_FILE' in s
if 'EOB_FILE' in s:
val = Path(s).name
【讨论】:
【参考方案2】:import os
s = "path Omega/CC/Pune/SYNTT/EOB_PROCESSED_BY_OCR/EOB_FILE/0A225618045646F2AEEFC23E74CAC253/0A225618045646F2AEEFC23E74CAC253_page1.json"
os.path.basename(s)
os 是 python 杂项操作系统接口。查看文档here
【讨论】:
以上是关于python提取具有给定正则表达式格式的文件[重复]的主要内容,如果未能解决你的问题,请参考以下文章
使用正则表达式使用python 2.7提取电子邮件接收者[重复]
pandas extractall() 没有提取给定正则表达式的所有案例?
Python编程实现正则表达式验证提取给定字符串中的句首字母应大写的字符?