using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace RegularExperssionDemo
{
class Program
{
//添加^表示从字符串的第一个开始匹配
//添加$表示匹配到字符串的最后一个字符
static void Main(string[] args)
{
string strDemo = "1<a>china</a>1"+
"2<a>i</a>2"+
"3<a>love</a>3"+
"4<a>you!</a>4";
//GetStrings(strDemo);//获取strDemo中的所有<a>拼音</a>
//GetString(strDemo);//获取strDemo中的第一个<a>拼音</a>
//ReplaceString(strDemo);//将<a>拼音</a>替换成replace
string input=Console.ReadLine();
IsMatchString(input);//判断匹配
Console.ReadLine();
}
/// <summary>
/// 获取strDemo中的所有<a>拼音</a>
/// 1.<a>china</a>
/// 2.<a>i</a>
/// 3.<a>love</a>
/// 4.<a>you!</a>
/// </summary>
/// <param name="strDemo"></param>
private static void GetStrings(string strDemo)
{
//正则表达式匹配
string pattern = @"<a>.+?</a>";
Regex reg=new Regex(pattern);
MatchCollection matchCollection = reg.Matches(strDemo);
foreach (Match match in matchCollection)
{
Console.WriteLine(match.Value);
}
}
/// <summary>
/// 获取strDemo中的第一个<a>拼音</a>
/// 1.<a>china</a>
/// </summary>
/// <param name="strDemo"></param>
private static void GetString(string strDemo)
{
//正则表达式匹配
string pattern = @"<a>.+?</a>";
Regex reg = new Regex(pattern);
Match match = reg.Match(strDemo);
Console.WriteLine(match.Value);
}
/// <summary>
/// 将<a>.+?</a>替换成replace
/// </summary>
/// <param name="strDemo"></param>
private static void ReplaceString(string strDemo)
{
//正则表达式替换
string pattern = @"<a>.+?</a>";
Regex reg = new Regex(pattern);
string strReplace = reg.Replace(strDemo, "replace");
Console.WriteLine(strReplace);
}
//判断匹配
private static void IsMatchString(string input)
{
//正则表达式查找
string pattern1 = @"^(((0\d{2,3})|(0\d{2,3}-))?(\d{7,8})(-\d{1,4})?)$";//国内的电话号码
string pattern2 = @"^(((0[1-9]{2,3})|(0[1-9]{2,3}-)){0,1}([1-9]{7,8})(-[1-9]{1,4}){0,1})$";//国内的电话号码
Regex reg = new Regex(pattern1);
bool flag = reg.IsMatch(input);
Console.WriteLine(flag.ToString());
}
}
}