chapter19学习小括号运算符(分组运算符)

源代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;


namespace chapter19学习小括号运算符
{
    class Program
    {
        /// <summary>
        /// 学习小括号运算符
        /// </summary>
        public void Test1()
        {
            string str = "213ab11ab22kjhghj";


            //模式定义
            string strPattern = @"(ab\w{2}){2}";
            //输出结果
            Console.WriteLine(Regex.Replace(str, strPattern, "*"));
        }


        /// <summary>
        /// 检索
        /// </summary>
        public void Test2()
        {
            string str = "213aob11ab22kjhghj";
            if(IsOK(str))
            {
                Console.WriteLine("检索成功");
            }
            else
            {
                  Console.WriteLine("检测失败");
            }
          
          
        }


        public bool IsOK(string str)
        {
            //模式定义,{2}表示重复两次
            string strPattern = @"(ab\w{2}){2}";
            return Regex.IsMatch(str, strPattern);
        }


        /// <summary>
        /// 验证座机电话号码是否为合法
        /// (010)-12345678
        /// 010-12345678
        /// 01012345678
        /// </summary>
        public void Test3()
        {
            string strTest1 = "(010)-12345678";//true
            string strTest2 = "010-12345678";//true
            string strTest3 = "01012345678";//true
            string strTest4 = "010)-12345678";//false
            string strTest5 = "(010)12345678";//true
            string strTest6 = "(010)-12hj5679";//false


            //定义模式,?表示重复一到两次,(表示一个元字符, \( 表示小括号字符(转义)
            string strPattern = @"\(0\d{2,3}\)[-]?\d{7,8}|^0\d{2,3}[-]?\d{7,8}$";
            Console.WriteLine(Regex.IsMatch(strTest1, strPattern));
            Console.WriteLine(Regex.IsMatch(strTest2, strPattern));
            Console.WriteLine(Regex.IsMatch(strTest3, strPattern));
            Console.WriteLine(Regex.IsMatch(strTest4, strPattern));
            Console.WriteLine(Regex.IsMatch(strTest5, strPattern));
            Console.WriteLine(Regex.IsMatch(strTest6, strPattern));




        }


      
        static void Main(string[] args)
        {
            Program obj = new Program();
            //obj.Test1();
            //obj.Test2();
            obj.Test3();
            Console.ReadKey();
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值