Having problems with the regex in html5_validation/index.html (p58)

At first sight the rgx is just wrong
"^(?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*[\d])(?=.*[\W]).*$"

To be sure I checked in C26.0.1410.63 and it clearly treats the rgx as expected:a concatenation of uncaptured groups instead of a conjunction of them. Now I wanted to put this into the errata just to find out that my rgx skills are more limited than I hoped. The only way I see is a very ugly, long and unreadable list of alternatives of all permutations of sequences like UC.*LC.*... | LC.*UC.* ...
where I cannot even construct the length constraint.