Mike, I think logical AND is implied. It's 'out of order' matching you want (if I understand the problem correctly). One way is unrolling the ordered matches (verbose for just three): /foo=.+bar=.+beef=|foo=.+beef=.+bar=|bar=.+foo=.+beef=|bar=.+beef=.+foo=|beef=.+foo=.+bar=|beef=.+bar=.+foo=/ Another way may be with zero-width lookahead matches: /(?=.*foo=)(?=.*bar=)(?=.*beef=)/ but that may be more expensive. All of this is untested, but try it and see if it works for you. Good luck, Troy >>> "Mike Bresnahan" <mbresnah at visi.com> 12/30/03 01:27PM >>> I have a perl/regular-expression question. I want to match lines in a web server log file based on multiple URL parameters. The X parameters may come in any order. The order is unimportant to me. Can I express this in a regular expression? Something like the following would make sense, but I don't see a logical AND in the docs, only a logical OR. (foo)&(bar)&(beef) This would match all of the following: foo=423&bar=234&beef=234 bar=423&beef=234&foo=2423 bar=2342&foo=234&beef=234234 Note that I have a need to express this in a single regular expression. _______________________________________________ tclug-devel mailing list tclug-devel at mn-linux.org https://mailman.real-time.com/mailman/listinfo/tclug-devel