<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<u></u>






<div>


<p dir="LTR"><span lang="en-us"></span><span lang="en-us"></span><span lang="en-us"><font face="Consolas">Hi,<br>
I am having an issue with something that would seem</font></span><span lang="en-us"></span><span lang="en-us"></span><span lang="en-us"> <font face="Consolas">to</font></span><span lang="en-us"></span><span lang="en-us"></span><span lang="en-us"> <font face="Consolas">have an easy solution,</font></span><span lang="en-us"></span><span lang="en-us"></span><span lang="en-us"> <font face="Consolas">but</font></span><span lang="en-us"></span><span lang="en-us"></span><span lang="en-us"> <font face="Consolas">which escapes me.  I have configuration files that I would like to parse.  The data I am having issue with is a multi-line attribute that has the following structure:<br>

<br>
banner <option> <banner text delimiter><br>
Banner text<br>
Banner text<br>
Banner text<br>
...<br>
<banner text delimiter></font></span></p></div></blockquote><div><div>This is an alternative solution someone else posted on this list for a similar problem I had:</div><div><br></div><div>#!/usr/bin/python3</div><div>
from itertools import groupby</div><div>def get_lines_from_file(file_name):</div><div>    with open(file_name) as reader:</div><div>        for line in reader.readlines():</div><div>            yield(line.strip())</div><div>
<br></div><div>counter = 0</div><div>def key_func(x):</div><div>    if x.strip().startswith("banner") and x.strip().endswith("<banner text delimiter>"):</div><div>        global counter</div><div>
        counter += 1</div><div>    return counter</div><div><br></div><div>for key, group in groupby(get_lines_from_file("my_data"), key_func):</div><div>    print(list(group)[1:-1])</div><div> </div></div><div>
<br></div><div> </div></div><br></div></div>