c# 使用Regex判断登录密码格式

1、简介

https://msdn.microsoft.com/zh-cn/library/system.text.regularexpressions.regex(v=vs.110).aspx

正则表达式类

//Regex.IsMatch();//用来判断给定的字符串是否匹配某个正则表达式

//Regex.Match();//用来从给定的字符串中按照正则表达式的要求提取【一个】匹配的字符串

//Regex.Matches();//用来从给定的字符串中按照正则表达式的要求提取【所有】匹配的字符串

//Regex.Replace(); //替换所有正则表达式匹配的字符串为另外一个字符串。

2、用来进行判断输入密码格式要求

格式要求:

最少一个小写字符

最少一个大写字符

最少一个数字

最少8位字符长,最长30个字符

  private void stu_register()
        {

            stu_info.UserName = Tb1.Text.ToString().Trim();//获取输入用户名
            stu_info.Password = Tb2.Text.ToString().Trim();//获取输入密码   

            if (stu_info.UserName != "" && stu_info.Password != "" )
            {
                //使用regex进行格式设置 至少有数字、大小写字母,最少8个字符、最长30个字符
                Regex regex = new Regex(@"(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).{8,30}");
              
                if (regex.IsMatch(teacher_info.Password))//判断密码格式是否符合要求
                {
                 
                        MessageBox.Show("输入密码格式正确!");
               
                }
                else
                {
                    MessageBox.Show("输入密码格式错误!");
                }
            }
            else
            {
                MessageBox.Show("Please fill in the full information!");
            }
        }

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
正则表达式是一种用于匹配文本的强大工具,C#中的Regex类可以帮助我们轻松地使用正则表达式。下面是C#Regex使用详解。 #### 1. 创建Regex对象 我们可以使用Regex类的构造函数创建一个Regex对象。构造函数需要一个正则表达式字符串作为参数,例如: ``` Regex regex = new Regex(@"\d+"); ``` 上面的代码创建了一个Regex对象,用于匹配一个或多个数字。注意,在正则表达式字符串前面加上@符号可以避免字符转义问题。 #### 2. 匹配字符串 使用Regex对象的Match方法可以匹配字符串。Match方法需要一个要匹配的字符串作为参数,例如: ``` string input = "123abc456"; Match match = regex.Match(input); ``` 上面的代码使用Regex对象regex匹配了字符串input中的数字。Match方法返回一个Match对象,该对象包含匹配结果的详细信息,例如匹配的值、起始位置等。 #### 3. 获取匹配结果 Match对象提供了多个属性和方法用于获取匹配结果的详细信息。下面是常用的一些属性和方法: - Value:获取匹配的值。 - Index:获取匹配的起始位置。 - Length:获取匹配的长度。 - Success:获取匹配是否成功的布尔值。 - Groups:获取匹配的分组。 例如,可以使用下面的代码获取第一个匹配的数字: ``` if (match.Success) { string value = match.Value; int index = match.Index; int length = match.Length; Console.WriteLine("Value: {0}, Index: {1}, Length: {2}", value, index, length); } ``` #### 4. 匹配多个结果 如果要匹配多个结果,可以使用Regex对象的Matches方法。Matches方法需要一个要匹配的字符串作为参数,返回一个MatchCollection对象,该对象包含所有匹配结果的详细信息。例如: ``` string input = "123abc456def789"; MatchCollection matches = regex.Matches(input); foreach (Match match in matches) { string value = match.Value; int index = match.Index; int length = match.Length; Console.WriteLine("Value: {0}, Index: {1}, Length: {2}", value, index, length); } ``` 上面的代码使用Regex对象regex匹配了字符串input中的所有数字,并输出了每个数字的详细信息。 #### 5. 替换字符串 使用Regex对象的Replace方法可以替换字符串中的匹配结果。Replace方法需要三个参数:要替换的字符串、替换后的字符串和一个可选的最大替换次数。例如: ``` string input = "123abc456def789"; string output = regex.Replace(input, "X"); Console.WriteLine(output); ``` 上面的代码使用Regex对象regex将字符串input中的所有数字替换为X,并输出了替换后的字符串。 以上就是C#Regex使用详解。正则表达式是一种非常强大的工具,可以用于各种文本处理任务。在使用正则表达式时,建议先编写正则表达式字符串,然后使用Regex类进行匹配和替换。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值