今天做测试题。碰到了两道正则表达式,好久没有写正则表达式了,写不来了,就在网上查询了下资料后才回想起来,把资料整理下了,分享个大家
正则表达式提供了功能强大、灵活而又高效的方法来处理文本。正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到特定的字符模式;提取、编辑、替换或删除文本子字符串;或将提取的字符串添加到集合以生成报告。对于处理字符串(例如 HTML 处理、日志文件分析和 HTTP 标头分析)的许多应用程序而言,正则表达式是不可缺少的工具。
.NET将其命名空间设置为System.Text.RegularExpressions;
正则表达式的字符语法介绍:
重复匹配语法:
字符定位语法:
附上一个刚刚做的一个黑马入学测试题
判断一个字符串是否是合法的Email地址。一个Email地址的特征就是以一个字符序列开始,
using System.Text.RegularExpressions; namespace test7 { class Program { static void Main(string[] args) { //判断一个字符串是否是合法的Email地址。一个Email地址的特征就是以一个字符序列开始, while (true) { Console.WriteLine("请输入一个邮箱地址"); //声明一个变量接收用户输入的邮箱地址 string email = Console.ReadLine(); //声明一个pattern接收正则表达式 string pattern = @"w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*"; //声明一个bool变量的值存储判断的值,true为合法,false为输入错误 bool pd = Regex.IsMatch(email, pattern); if (pd) { //输入正确,直接break跳出循环 Console.WriteLine("输入合法"); break; } else { //输入错误,提示继续输入 Console.WriteLine("输入错误,请从新输入"); } } Console.ReadKey(); } } }