regex, aby umożliwić conajmniej jeden znak specjalny, jedną wielką, jedną małą (w dowolnej kolejności)

Czy ktoś może mi pomóc z regexem, aby pozwolić na conajmniej jeden znak specjalny, jedną wielką, jedną małą.

Oto, co mam do tej pory:

<code> ^.*(?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$
</code>

ale wydaje się, że pasuje do znaków tylko w kolejności „znak specjalny”, „wielkie litery”, „małe litery”.

Każda pomoc jest bardzo mile widziana

questionAnswers(3)

yourAnswerToTheQuestion