lucy24 - 1:59 am on Aug 5, 2013 (gmt 0)
If you want it to evaluate the conditions on every request, then no. The pattern can't get much more all-inclusive than
If you only care about page requests, then you can put that into the pattern.
This is a textbox case of inappropriate [NC] flag. Find out what the sistrix crawler calls itself, and give that exact casing, without flag. Admittedly you will not meet a whole lot of sistrix spoofers compared to, say, fake googlebots. But stay in the habit.
When there's more than one condition, list them in order of most-likely-to-fail unless there's a strong reason for using a different order (for example, if you're listing a whole bunch of robots, keep them in alphabetical order for your own sanity). Unless it's an [OR] delimited group; then default to most-likely-to-succeed.
Here, the intuitive ordering agrees with the likely-to-fail ordering:
intuitive: "UA contains 'crawl' but is not sistrix crawler"
likely to fail: "UA contains 'crawl'" (chance of failure: let's say 90% total) vs. "UA is not 'sistrix'" (chance of failure: let's say 1% total).