Эту регулярку писал определённо человек незнакомый с синтаксисом регулярных выражений. Иначе объяснить повторение круглых скобок и | внутри символьной маски невозможно.
Коряво написано, что в строке должны быть только: \w (точный список зависит от локали, обычно a-z0-9 и ещё что-нибудь), символы @/.?!()|, пробельные символы либо что угодно из верхнего диапазона ASCII (то есть изрядный кусок юникода включая смайлики и прочую наскальную живопись дружно проходит паровозиком, рандомно обламываясь на случайных символах)
А нафига пароль фильтровать?
|