Вы действительно хотите сделать это с помощью регулярного выражения? Чем больше «слабых» слов вы придумаете, тем дольше и запутаннее будет регулярное выражение. Почему бы просто не создать список неприемлемых слов и использовать цикл / LINQ, чтобы проверить, содержит ли пароль какое-либо из них? Это все еще будет достаточно быстро и легко читаться.
Единственное, о чем не заботится ни регулярное выражение, ни мое решение, описанное выше, - это обнаружение n чисел подряд / цифр. Вы просто ищете 12345? Или вы ищете что-то, что также обнаружит такие строки, как 1234567, 1234 или 56789? Это потребует дополнительной работы.