Python如何从文件中提取FILENAME值与标签内文本并赋值给变量
实现方案
分两种常用场景的最优解:
Shell 命令行快速处理(适合单次提取需求)
- 提取FILENAME到变量:
# 替换your_file.txt为你的实际文件路径 filename=$(awk -F '<FILENAME>' '/<FILENAME>/{print $2}' your_file.txt)
- 提取rptOwnerId到变量:
# 替换your_file.txt为你的实际文件路径 rpt_owner_id=$(grep -oP '(?<=<rptOwnerId>).*?(?=</rptOwnerId>)' your_file.txt)
说明:这个方案不需要额外安装依赖,Linux/macOS系统默认自带awk和grep,执行速度最快。
Python 脚本处理(适合需要后续逻辑处理的场景)
import re # 读取文件内容,注意替换文件路径 with open("your_file.txt", "r", encoding="utf-8") as f: file_content = f.read() # 提取FILENAME值,自动过滤前后空白字符 filename = re.search(r"<FILENAME>\s*(.*?)\s*$", file_content, re.M).group(1) # 提取rptOwnerId值 rpt_owner_id = re.search(r"<rptOwnerId>(.*?)</rptOwnerId>", file_content).group(1)
说明:正则匹配加入了空字符过滤逻辑,适配标签前后可能存在空格/换行的场景,稳定性更高,适合嵌入到业务脚本中使用。
内容的提问来源于stack exchange,提问作者Landon Statis
相关产品推荐
相关产品推荐

