Turns out that the "positive look ahead" syntax (?=.*\d) is buggy in IE6.
I have a workaround which is good enough: chaining together simpler regular expressions: return this.optional(element) || ( (/^[^\W]*$/.test(value)) && (/^. {8,255}$/.test(value)) && (/[a-z]+/.test(value)) && (/[A-Z] +/.test(value)) && (/[\d]+/.test(value)) ); On Nov 11, 11:14 am, dk <[EMAIL PROTECTED]> wrote: > Thanks for a great validation plugin! > > Writing my first custom validation: > > <script> > $(document).ready(function(){ > jQuery.validator.addMethod("adminPwd", function(value, > element) { > return this.optional(element) || /^(?=.*\d)(?=.*[a-z])(? > =.*[A-Z])(?!.*\s)(?!.*\W).{8,255}$/.test(value); > }, "The password must contain lower case, upper case and > number(s) and be at least 8 characters"); > $('#userForm').validate(); > }); > </script> > > The aim is that the password must contain at least one lower case, one > upper case and one number. Spaces are not allowed. Lenght at least 8 > characters > > This works in FF3 but not in IE6. I suspect some regular expression > incompability in IE6 but I don't know how to debug it to pinpoint > exactly which part of the RE fails. > > Any workarounds would be appretiated! > > dk