<[EMAIL PROTECTED]> wrote:

> but output is:
>
> SET2_S_W CHAR(1) NOT NULL,
> SET4_S_W CHAR(1) NOT NULL,
>
> It should delete every, not every other!

for i in range(len(lines)):
    try:
        if s_ora.search(lines[i]): del lines[i]
    except IndexError:
        ...

when you loop over a range, the loop counter is incremented also if you delete
items.  but when you delete items, the item numbering changes, so you end up
skipping over an item every time the RE matches.

to get rid of all lines for which s_ora.search matches, try this

    lines = [line for line in lines if not s_ora.search(line)]

for better performance, get rid of the leading and trailing ".*" parts of your
pattern, btw.  not that it matters much in this case (unless the SQL state-
ment is really huge).

</F> 



-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to