基础语法元字符:
. 表示任意字符(换行符除外)
\w 表示字母、数字、下划线、汉字。
\W 表示“\w”的补集
\s 表示任意空白字符(包括换行\n、 回车\r、制表\s、垂直制表\v、换页符\f)
\S 表示"\s"的补集
\d 表示数字
\D 表示非数字
* 表示重复0到多次
例如:以数字开头,中间有任意个数字,且数字结尾的字符串
string str =@"^\d*$";
Regex.IsMatch(strNum, str);
源代码:
/***
* 学习基础元字符
*
* *表示重复0-n次
*
*
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace chapter5正则表达式的优势
{
class Program
{
/// <summary>
/// 表示以数字开头,中间有任意多个数字,且以数字结尾
/// </summary>
public void Test1()
{
string str = "2345k99";
Console.WriteLine(JudgeNumber(str));
}
/// <summary>
/// 正则表达式方式
/// </summary>
/// <param name="strNum"></param>
/// <returns></returns>
private bool JudgeNumber(string strNum)
{
string strPattern = @"^\d*$";
return Regex.IsMatch(strNum, strPattern);
}
/// <summary>
/// 传统方式
/// </summary>
/// <param name="strNum"></param>
/// <returns></returns>
private bool JudgeNumberBystring(string strNum)
{
bool isAllNumber = true;
for (int i = 0; i < strNum.Length; i++)
{
if (strNum[i] < '0' || strNum[i] > '9')
{
isAllNumber = false;
break;
}
}
return isAllNumber;
}
public void Test2()
{
string str = "2345gg99";
Console.WriteLine(JudgeNumberBystring(str));
}
public void Test3()
{
}
public void Test4()
{
}
static void Main(string[] args)
{
Program obj = new Program();
obj.Test2();
Console.ReadKey();
}
}
}