我想提取部分文件内容。以“头”开头 以“arraydat”结尾
文件内容:
(record
( "head"
(record
( "pname" "C16D")
( "ptype" "probe")
( "sn" "11224")
( "rev" "1")
( "opname" "Kaji")
( "comm"
[ "" ]
)
( "numel" 192)
( "mux" 1)
( "freq" 3400000)
( "date" 63602497416.093)
( "focus" 0.066)
( "probID" 574)
( "te" 0)
( "therm" 0)
( "bipolar" "N/A")
( "maker" "YMS")
( "PartNum" 5418916)
( "numrow" 1)
)
)
( "arraydat"
(record
( "FL6" 1625283.947393933)
( "FH6" 4932875.254089763)
( "FL20" 1283607.261269079)
( "FH20" 5673248.882271254)
( "Fc" 3279079.600741847)
( "BW" 100.8695033187829)
( "PW6" 3.316821935120381E-007)
( "PW20" 9.740000000000003E-007)
( "PW30" 1.456E-006)
( "PW40" 2.628000000000001E-006)
( "LG" -46.35823409318354)
( "TOF" -1.363659434369523E-008)
)
我需要在“head”之后和“arraydat”之前提取文件的内容。 我试过这个命令,但运气不好
import re
with open('sample.txt','r') as new_file:
data = new_file.read()
pattern = re.compile(r'\s[(]\s"head"[\s\S]*?\s[(]\s"arraydat"')
stringtext = re.findall(pattern, data)
print(stringtext)
输出应如下所示:
( "pname" "C16D")
( "ptype" "probe")
( "sn" "11224")
( "rev" "1")
( "opname" "Kaji")
( "comm"
[ "" ]
)
( "numel" 192)
( "mux" 1)
( "freq" 3400000)
( "date" 63602497416.093)
( "focus" 0.066)
( "probID" 574)
( "te" 0)
( "therm" 0)
( "bipolar" "N/A")
( "maker" "YMS")
( "PartNum" 5418916)
( "numrow" 1)
)
)
请检查以下代码:
输出:
控制台上:
内容输出.csv:
我希望这有帮助。
相关问题 更多 >
编程相关推荐