using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Reflection;
using System.Text.RegularExpressions; namespace codeTest
{
class Program
{
static void Main(string[] args)
{
string[] strArray = { "1111-222-333", "1111-2222-3333" };
string pattern = @"^\d{4}-\d{3}-\d{3}$"; foreach (var item in strArray)
{
if (Regex.IsMatch(item, pattern))
{
Console.WriteLine("{0} is vaild", item);
}
else
{
Console.WriteLine("{0} is not vaild", item);
}
}
RegexIsMacth();
RegexReplace();
RegexSplit();
RegexMacths();
RegexGroup();
Console.ReadLine();
} static void RegexIsMacth()
{
string input = " this is my name my name";
string pattern = @"\s\w{4}\s";
Match match = Regex.Match(input,pattern);
while(match.Success)
{
Console.WriteLine(match.Groups[].Value);
match = match.NextMatch();
}
} static void RegexReplace()
{
string input = " this is my name my name";
string pattern = @"\s\w{4}\s";
string replacement = " 匹配 ";
Console.WriteLine(input);
Console.WriteLine(Regex.Replace(input, pattern, replacement));
} static void RegexSplit()
{
string input = "1.A 2.B 3.C 4.D ";
string pattern = @"\s";
foreach (var item in Regex.Split(input,pattern))
{
if (!string.IsNullOrEmpty(item))
{
Console.WriteLine(item);
}
}
} static void RegexMacths()
{
Regex regex = new Regex(@"\d+");
MatchCollection matchs;
matchs = regex.Matches("123abc333adsa123123asdasd123123");
foreach (Match item in matchs)
{
Console.WriteLine("value is {0},index is {1}",
item.Value,item.Index);
Console.WriteLine("Result is {0}",item.Result("[$&]"));
}
} static void RegexGroup()
{
string input = "born: July 28, 1989";
string pattern = @"\b(\w+)\s(\d{1,2}),\s(\d{4})\b";
Match match = Regex.Match(input, pattern);
for (int i = ; i < match.Groups.Count; i++)
{
Console.WriteLine("Group value is {0},index is {1}",match.Groups[i].Value,match.Groups[i].Index);
}
}
} }

推荐使用微软的Regular Expression Tester工具测试

C#的正则表达式的更多相关文章

  1. JS正则表达式常用总结

    正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...

  2. Python高手之路【五】python基础之正则表达式

    下图列出了Python支持的正则表达式元字符和语法: 字符点:匹配任意一个字符 import re st = 'python' result = re.findall('p.t',st) print( ...

  3. C# 正则表达式大全

    文章导读 正则表达式的本质是使用一系列特殊字符模式,来表示某一类字符串.正则表达式无疑是处理文本最有力的工具,而.NET提供的Regex类实现了验证正则表达式的方法.Regex 类表示不可变(只读)的 ...

  4. C#基础篇 - 正则表达式入门

    1.基本概念 正则表达式(Regular Expression)就是用事先定义好的一些特定字符(元字符)或普通字符.及这些字符的组合,组成一个“规则字符串”,这个“规则字符串”用来判断我们给定的字符串 ...

  5. JavaScript正则表达式,你真的知道?

    一.前言 粗浅的编写正则表达式,是造成性能瓶颈的主要原因.如下: var reg1 = /(A+A+)+B/; var reg2 = /AA+B/; 上述两个正则表达式,匹配效果是一样的,但是,效率就 ...

  6. Python 正则表达式入门(中级篇)

    Python 正则表达式入门(中级篇) 初级篇链接:http://www.cnblogs.com/chuxiuhong/p/5885073.html 上一篇我们说在这一篇里,我们会介绍子表达式,向前向 ...

  7. 【JS基础】正则表达式

    正则表达式的() [] {}有不同的意思. () 是为了提取匹配的字符串.表达式中有几个()就有几个相应的匹配字符串. (\s*)表示连续空格的字符串. []是定义匹配的字符范围.比如 [a-zA-Z ...

  8. JavaScript 正则表达式语法

    定义 JavaScript定义正则表达式有两种方法. 1.RegExp构造函数 var pattern = new RegExp("[bc]at","i"); ...

  9. [jquery]jquery正则表达式验证(手机号、身份证号、中文名称)

    数字判断方法:isNaN()函数 test()方法 判断字符串中是否匹配到正则表达式内容,返回的是boolean值 ( true / false ) // 验证中文名称 function isChin ...

  10. JS中给正则表达式加变量

    前不久同事询问我js里面怎么给正则中添加变量的问题,遂写篇博客记录下.   一.字面量 其实当我们定义一个字符串,一个数组,一个对象等等的时候,我们习惯用字面量来定义,例如: var s = &quo ...

随机推荐

  1. am335x sd卡启动系统参数设置

    首先直接记录结果 在u-boot 中修改参数 #define AUTO_UPDATESYS */ 直接把这个参数注释掉. 这个参数是原来用来升级nor flash 启动系统设置的一个参数,也就是说, ...

  2. django-cms安装

    ubuntu:12.04 (32bit) djangocms 0.5.1 =========================== 首先,跟着这个做: https://github.com/divio/ ...

  3. Tomcat启动服务报错:Unknown version string [3.1]. Default version will be used.

    用Intellij IDEA 部署Web项目,Tomcat启动后报错Unknown version string [3.1]. Default version will be used. 作者的问题出 ...

  4. Oracl各个版本的下载地址

    http://www.oracle.com/technetwork/cn/database/enterprise-edition/downloads/112010-win32soft-098630-z ...

  5. Java从网络读取图片并保存至本地

    package cn.test.net; import java.io.File; import java.io.FileOutputStream; import java.io.InputStrea ...

  6. libreoffice安装

    centos7下libreoffice的安装 #下载安装包wget http://mirrors.ustc.edu.cn/tdf/libreoffice/stable/5.1.1/rpm/x86_64 ...

  7. Greedy:Paint Color(AOJ 0531)

    涂颜料 题目大意:在一个1000000*1000000的矩阵中放入几块木板,问你这些木板把矩阵划分成了几个区域?输入会给左下角和右上角的坐标,输入W==0且H==0结束. 这一题是书上的作业题,书上有 ...

  8. javascript 中 filter 方法

    filter 方法用来迭代一个数组,并且按给出的条件过滤出符合的元素. filter 方法传入一个回调函数,这个回调函数会携带一个参数,参数为当前迭代的项(我们叫它 val ). 回调函数返回 tru ...

  9. 用window.print()打印指定div里面的内容(转载的)

    用window.print()打印指定div里面的内容 今天客户让添加个打印证照功能,直接用window.print()打印的是整个页面,而用以下方法就可以只打印证明了 <!--window.p ...

  10. 【leetcode】 Search a 2D Matrix (easy)

    Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the follo ...