<div dir="ltr">fair guess, but . isn't special in that context. what i was missing was s*s*g was matching right through syslog.2.g so !(*.*) couldn't eliminate dots it couldn't see. no way to specify shortest match for s*s*g afaik. anyway a better pattern is *(messages|syslog)<br>
<div><div class="gmail_extra"><br><br><div class="gmail_quote">On 10 May 2014 13:17, Daniel Taylor <span dir="ltr"><<a href="mailto:random@argle.org" target="_blank">random@argle.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>(*\.*)<div><div class="h5"><br><br>
On 05/10/2014 08:12 AM, gregrwm wrote:<br>
</div></div></div>
<blockquote type="cite"><div><div class="h5">
<div dir="ltr">
<div>
<div>ok you bashers, check me on this:<br>
<br>
matches wanted: messages syslog<br>
matches not wanted: anaconda.syslog messages.1 syslog.1
syslog.2.gz<br>
pattern1: !(*.)s*s*g!(*.*)<br>
</div>
pattern1 match results: messages syslog syslog.2.gz
syslog.3.gz syslog.4.gz<br>
</div>
pattern2: !(*.)s*s*g!(*1|*z)<br>
<div>pattern2 match results: messages syslog<br>
<br>
so pattern2 works. but is that pattern1 result a bug?<br></div></div></div></div></blockquote></div></blockquote></div></div></div></div>