// Форма
using CoreLib;
namespace WinFormsApp1
{
public partial class Form1 : Form
public Form1()
InitializeComponent();
}
private void CheckPasswordBtn_Click(object sender, EventArgs e)
string password = PasswordTextBox.Text;
bool isPasswordCorrect = Utils.IsPasswordCorrect(password);
if (isPasswordCorrect)
MessageBox.Show("Хороший пароль");
else
MessageBox.Show("Неверный пароль");
// Библиотека
using System.Text.RegularExpressions;
namespace CoreLib
public class Utils
public static bool IsPasswordCorrect(string password)
var invalidCharacterRegex = new Regex(@"[*&{}|+]"); // нашелся символ из перечисленных в квадратных скобках
var uppercaseLetterRegex = new Regex(@"[A-Z]+"); // нашелся один или более символ заглавной буквы
/*
* (.) захват символа в группу 1
* \1 дальше снова идет группа 1
*/
var identicalConsecutiveCharactersRegex = new Regex(@"(.)\1\1");
return password.Length >= 8 &&
!invalidCharacterRegex.IsMatch(password) &&
uppercaseLetterRegex.IsMatch(password) &&
!identicalConsecutiveCharactersRegex.IsMatch(password);
Copyright © 2024 SCHOLAR.TIPS - All rights reserved.
Answers & Comments
// Форма
using CoreLib;
namespace WinFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void CheckPasswordBtn_Click(object sender, EventArgs e)
{
string password = PasswordTextBox.Text;
bool isPasswordCorrect = Utils.IsPasswordCorrect(password);
if (isPasswordCorrect)
MessageBox.Show("Хороший пароль");
else
MessageBox.Show("Неверный пароль");
}
}
}
// Библиотека
using System.Text.RegularExpressions;
namespace CoreLib
{
public class Utils
{
public static bool IsPasswordCorrect(string password)
{
var invalidCharacterRegex = new Regex(@"[*&{}|+]"); // нашелся символ из перечисленных в квадратных скобках
var uppercaseLetterRegex = new Regex(@"[A-Z]+"); // нашелся один или более символ заглавной буквы
/*
* (.) захват символа в группу 1
* \1 дальше снова идет группа 1
* \1 дальше снова идет группа 1
*/
var identicalConsecutiveCharactersRegex = new Regex(@"(.)\1\1");
return password.Length >= 8 &&
!invalidCharacterRegex.IsMatch(password) &&
uppercaseLetterRegex.IsMatch(password) &&
!identicalConsecutiveCharactersRegex.IsMatch(password);
}
}
}