C#中正则表达式的构建与匹配
使用方法
【1】用用命名空间System.Text.RegularExpressions
【2】构造正则表达式
在使用正则表达式时,要先构造正则表达式,这就用到了Regex类,其构建方式有两种:
基本形式:Regex(正则表达式);
重载形式:Regex(正则表达式,匹配选项);
其中匹配选项是提供一些特殊帮助,是一个枚举值,包括下面六个值:
Ignorecase(忽略大小写)。
ReghtToLeft(从右向左)。
None(默认)。
Culturelnvariant(忽略区域)。
MultLine(多行模式)。
SingleLine(单行模式)。
在Regex类中包括IsMatch()、Replace()、Split()等
IsMatch():测试字符是否满足正则表达式,返回布尔值
软件的用户并非都是熟练的软件人员,这就要对所输入的数据进行验证,如要进入一个电子邮箱,就
要验证所输入的是不是一个合法的电子邮箱地址:如果输入一个手机号码,就要验证用户输入的是不是一个合法的手机号码,这些都要用正则表达式的匹配
IsMatch的使用格式:
Regex.ISMatch(要判断的字符串,正则表达式);
实例:
验证一组数内号码是否为长春市的固定电话
提示(区号为0431 民用号码为8位)
using System.Text.RegularExpressions; namespace RegexIsMatch
{
class Program
{
static void Main(string[] args)
{
string patper = @"^(0431|0431-)\d{8}$";
string[] input = {"021-12548521","","0431-81057515","0231-52145871","" };
foreach (string item in input)
{
//静态方式
//bool b = Regex.IsMatch(item,patper);
//if (b)
//{
// Console.WriteLine(item+"是长春固定电话");
//}
//else
//{
// Console.WriteLine(item+"不是长春固定电话");
//}
//实例化方式
Match myatch = Regex.Match(item,patper);
if (myatch.Success)
{
Console.WriteLine(item+"长春");
}
else
{
Console.WriteLine(item+"不是长春");
}
}
Console.Read();
}
}
C#中正则表达式的构建与匹配的更多相关文章
- Python中正则表达式对中文的匹配问题
python匹配中文的时候特别要注意的是匹配的正则字符串是否是Unicode格式的: import re source = "s2f程序员杂志一2d3程序员杂志二2d3程序员杂志三2d3程序 ...
- Jmeter中正则表达式不区分大小写进行匹配
(?i)<r i="([A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12})" ...
- JavaScript中正则表达式判断匹配规则以及常用的方法
JavaScript中正则表达式判断匹配规则以及常用的方法: 字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在. 正则表达式是一种用来匹配字符串的强有力的武器.它的设计思想 ...
- C#中正则表达式只取前N个匹配结果
用Regex.Matches方法可以得到同指定正则表达式对应的所有匹配结果.有时,所有匹配结果可能有成千上万个,考虑到性能效率的因素,只需要取出前N个匹配结果.下面的代码演示了做法: 需求:取字符串中 ...
- 详解Javascript中正则表达式的使用
正则表达式用来处理字符串特别好用,在JavaScript中能用到正则表达式的地方有很多,本文对正则表达式基础知识和Javascript中正则表达式的使用做一个总结. 第一部分简单列举了正则表达式在Ja ...
- JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解
二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...
- mysql中正则表达式的使用
mysql中正则表达式的性能要高于like,所以这里总结一下正则表达式的使用. 正则表达式的模式及其含义: 下面举例说明其用法: 建表student: create table student(id ...
- java中正则表达式基本用法
正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为 ...
- java基础---->java中正则表达式二
跟正则表达式相关的类有:Pattern.Matcher和String.今天我们就开始Java中正则表达式的学习. Pattern和Matcher的理解 一.正则表达式的使用方法 一般推荐使用的方式如下 ...
随机推荐
- javascript javascript面向对象的理解及简单的示例
javascript面向对象的理解及简单的示例 零.本节重点: 1.封装: 2.继承: 壹.下面理解: 一. javascript面向对象概念: 为了说明 JavaScript 是一门彻底的面向对象的 ...
- unity网络延迟
using UnityEngine; using System.Collections; public class Test_Ping : MonoBehaviour { public string ...
- 改变input[type=file]的默认样式
自定义上传按钮样式的终极解决方案--input透明法 <style> .div1{ float: left; height: 41px; background: #f5696c; widt ...
- SAP 740GUI客户端快捷方式取消密码登陆
客户端电脑:WIN10 专业版64位. 1. 进入注册表编辑器(regedit) .进入如下路径:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\SAP\SAPLogo ...
- kuangbin专题七 HDU1540 Tunnel Warfare (前缀后缀线段树)
During the War of Resistance Against Japan, tunnel warfare was carried out extensively in the vast a ...
- kuangbin专题七 ZOJ1610 Count the Colors (灵活线段树)
Painting some colored segments on a line, some previously painted segments may be covered by some th ...
- FPGA基础学习(2) -- FIFO IP核(Quartus)
ALTERA在LPM(library of parameterized mudules)库中提供了参数可配置的单时钟FIFO(SCFIFO)和双时钟FIFO(DCFIFO).FIFO主要应用在需要数据 ...
- dedecms 的采集
http://www.360doc.com/content/14/0521/09/13870710_379547377.shtml http://www.360doc.com/content/14/0 ...
- jinkens 检查svn更新就构建
以下的配置就是,svn上的文件一旦有变动,一分钟后就会触发jinkens的job(构建)
- Java升级替换java version "1.5.0"
首先进行java安装 http://www.cnblogs.com/someone9/p/8670585.html 2. 然后查看版本信息,仍然是1.5.0 [root@OKC java]# java ...