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的理解 一.正则表达式的使用方法 一般推荐使用的方式如下 ...
随机推荐
- B - Factors of Factorial
Problem Statement You are given an integer N. Find the number of the positive divisors of N!, modulo ...
- Java之批处理的实现
批处理(batch) 一.批处理介绍 1. 批处理指的是一次操作中执行多条SQL语句 2. 批处理相比于一次一次执行效率会提高很多 3. 批处理主要是分两步: 1.将要执行的SQL语句保存 2.执行S ...
- 13.Convert BST to Greater Tree(将树转为更大树)
Level: Easy 题目描述: Given a Binary Search Tree (BST), convert it to a Greater Tree such that every k ...
- 商品录入功能v1.0【持续优化中...】
# 录入商品 def goods_record(): print("欢迎使用铜锣辉的购物商城[商品管理][录入商品]".center(30, "*")) whi ...
- MySql8最新配置方式(完美)
下载MYSQL8 地址:https://www.mysql.com/downloads/ 1.滑动网页到最下面,选择Community (GPL) Downloads » 2.选择MySQL Comm ...
- Hibernate常见报错
1.A different object with the same identifier value was already associated with the session(使用Hibern ...
- LCA最近公共祖先模板(求树上任意两个节点的最短距离 || 求两个点的路进(有且只有唯一的一条))
原理可以参考大神 LCA_Tarjan (离线) TarjanTarjan 算法求 LCA 的时间复杂度为 O(n+q) ,是一种离线算法,要用到并查集.(注:这里的复杂度其实应该不是 O(n+q) ...
- xpath的基础使用
一.xpath简介 XPath 是一门在 XML 文档中查找信息的语言.XPath 用于在 XML 文档中通过元素和属性进行导航. XPath 使用路径表达式在 XML 文档中进行导航 XPath 包 ...
- form组件之modelForm
modelForm的使用及参数设置 从modelForm这个名字就能看出来,这个form是和模型类model有知己诶关联的,还是以数和出版社的模型来说明: models.py(模型) from dja ...
- put get & push pull
总要有一个容器,一个生产方,一个消费方