用python正则表达式提取TXT文本的特定符号中间的字符串并保存到CSV

['[@利用硝酸铵液作为动力源的空气动力汽车及其工作方法#req*]', '本发明公开了一种[@利用硝酸铵液作为动力源的空气动力汽车及其工作方法#req*],包括[@升压罐#com*]和[@储液箱#com*],升压罐上设有[@喷液器#com*],[@喷液器#com*]与[@储液箱#com*]通过第一[@管道#com*]进行连通,[@升压罐#com*]上还设有火花塞,[@火花塞#com*][@用于点燃喷液器喷出的硝酸铵液#pri*],在[@升压罐#com*]上还设有出气口,在出气口处[@连接#connect*]有第二[@管道#com*],第二[@管道#com*]远离其[@连接#connect*]出气口的一端[@连接#connect*]有[@储气筒#com*],在第二[@管道#com*]上设有第一[@单向阀#com*]和第二单向,第一[@单向阀#com*]和第二[@单向阀#com*][@用于防止储气筒内的压缩空气向升压罐回流#pri*],[@储气筒#com*]上还开设有放气孔,放气孔通过第三[@管道#com*]与气动马达[@连接#connect*],气动马达的转轴上还[@连接#connect*]有第一[@齿轮#com*],第一[@齿轮#com*]与汽车传动轴上的[@齿轮#com*]啮合。本方案不会对环境产生污染,同时使用成本低。']

现需要1.txt提取@......#   和  #.......*  的字符串 然后保存成CSV的格式 具体的格式是 每行是@......#    #.......*  然后以这样的格式一列一列的排布下去

import csv
import re

with open("1.txt","r",encoding="utf-8") as fileObj:
    data = fileObj.read()
print(data)
li = re.findall(r'@(.*?)#(.*?)\*',data,re.S)
print(*li,sep="\n")

with open("data.csv","w",newline="",encoding="utf-8") as fileObj:
    csv.writer(fileObj).writerows(li)

 

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632