我有一个很大的文本文件,其中包含几个数据块,其中各块用{}分隔。我需要文件中的两部分数据才能使用。
我试图找到目标数据的标题(例如“ job”),以便在接下来的}之前读取以下行,但我在第一步中失败了:
open("file.txt","r") do f
for j in eachline(f)
if "job" in j
return true
return false
end
end
end
所以我期待任何帮助。
答案 0 :(得分:3)
有很多方法可以做到这一点。这是使用单个循环的一种可能性:
open("file.txt") do f
job_found = false
while true
line = readline(f)
if job_found
occursin("}", line) && break
println(line)
else
job_found = occursin("job", line)
end
end
end
此代码将在"job"
中包含line
字符串之后打印所有行,直到某些"}"
中包含line
。
这是您想要的吗?
答案 1 :(得分:0)
您可以使用以下命令进行操作:
但是最好发送您的文本以更好地检查文本或获取该示例
答案 2 :(得分:0)
通过将awk或sed命令与它们的开关一起使用,您会看到更好的结果,因为我没有示例文本来帮助您更好