正则表达式Regex类常用方法

1、 IsMatch()方法,IsMatch()方法实际上是一个返回Bool值得方法,如果测试字符满足正则表达式返回True否则返回False。
例子:

//匹配的正则表达式,去掉@不影响效果
Regex r = new Regex(@"^[0-9]");
//开始匹配
Match m = r.Match(this.textBox1.Text);
while (m.Success)
{
       MessageBox.Show("首位是数字");
       return;
}

检测textBox1中输入的值,首位是不是数字。

小注:

1、IsMatch()方法;IsMatch()方法实际上是一个返回Bool值得方法,如果测试字符满足正则表达式返回True否则返回False。

2、@符是用来原样输出的@"",两个引号中间的内容会原样输出,不管其中有什么特殊符号。

2、Replace()方法,Replace()方法实际上是一种替换的方法,替换匹配正则表达式匹配模式。

例子:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace TestRegularExpressions
{
    class Program
    {
        static void Main(string[] args)
       {
            string RegularText = "\\w{1,}@\\w{1,}\\.";
            string groupEmail = "111@126.com";
            if (Regex.IsMatch(groupEmail,RegularText))
            {
                Console.WriteLine(Regex.Replace(groupEmail, "@", "==="));
            }
            else
            {
                Console.WriteLine("未匹配成功!");
            }
            Console.ReadKey();
        }
    }
}

输出:
3、Split()方法,Split()方法实际上是拆分的方法,根据匹配正则表达式进行拆分储存在字符串数组中。

例子:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace TestRegularExpressions
{
    class Program
    {
        static void Main(string[] args)
        {
            string RegularText = ";";
            string groupEmail = "111@126.com;222@126.com;333@126.com;444@126.com;";
            string[] Email;
            Email = Regex.Split(groupEmail, RegularText);
            foreach (string personEmail in Email)
            {
                Console.WriteLine(personEmail);
            }
            Console.ReadKey();
        }
    }
}

输出:

小注:

        对于string即字符串,可以使用String.Split 方法,效果一样。例如,去除vsNt中的英文,代码如下:

string[] Au=vsNt.Split(',');

        函数具体细节:点击打开链接

Split函数小封装:

        #region 根据pattern拆分字符串
        /// <summary>
        /// 根据pattern拆分字符串
        /// </summary>
        /// <param name="input">待拆分的字符串</param>
        /// <param name="pattern">拆分标识符</param>
        /// <returns>拆分后数组</returns>
        private string[] SplitString(string input, string pattern)
        {
            string[] Email;
            Email = Regex.Split(input, pattern);
            return Email;
        }
        #endregion

 
 

时间: 2024-08-04 01:58:02

正则表达式Regex类常用方法的相关文章

C#正则表达式之Regex类用法详解_正则表达式

Regex 类表示不可变(只读)的正则表达式.它还包含各种静态方法,允许在不显式创建其他类的实例的情况下使用其他正则表达式类. 正则表达式基础概述 什么是正则表达式    在编写字符串的处理程序时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码.     通常,我们在使用WINDOWS查找文件时,会使用通配符(*和?).如果你想查找某个目录下的所有Word文档时,你就可以使用*.doc进行查找,在这里,*就被解释为任意

C#正则表达式之Regex类用法详解

Regex 类表示不可变(只读)的正则表达式.它还包含各种静态方法,允许在不显式创建其他类的实例的情况下使用其他正则表达式类. 正则表达式基础概述 什么是正则表达式 在编写字符串的处理程序时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码. 通常,我们在使用WINDOWS查找文件时,会使用通配符(*和?).如果你想查找某个目录下的所有Word文档时,你就可以使用*.doc进行查找,在这里,*就被解释为任意字符串.和通配

Boost学习之正则表达式--regex

来源:http://blog.chinaunix.net/uid-21222282-id-1829265.html 来源:http://www.cnblogs.com/undermoon/archive/2009/11/30/1613508.html 来源:http://blog.csdn.net/guyulongcs/article/details/7838753 来源:http://blog.csdn.net/leonardwang/article/details/6035171 boost

Android开发中超好用的正则表达式工具类RegexUtil完整实例

本文实例讲述了Android开发中超好用的正则表达式工具类RegexUtil.分享给大家供大家参考,具体如下: /*********************************************** * 正则表达式工具 * * @author chen.lin * @version 1.0 ************************************************/ public class RegexUtil { /** * 车牌号码Pattern */ pub

String类常用方法之charAt()、codePointAt()示例

1.chatAt()--提取指定字符串 2.codePointAt()--提取索引字符代码点   Java代码 /**    * 作者:阳光的味道    * 功能:   String类常用方法之charAt().codePointAt()    * 日期:2010/11/07    * */   public class StringDemo {        public static void main(String[] args) {            String str1 = "a

一个在Flash里面使用的正则表达式的类

正则 一个在Flash里面使用的正则表达式的类,使用这个类的原因是FLASH里面对文本输入检测要求不高,例如就不能检测输入的邮件格式是否正确: class RegExp {  public var const:String = null;  public var source:String = null;  public var global:Boolean = false;  public var ignoreCase:Boolean = false;  public var multilin

C++中正则表达式(regex) 迭代器(iterator) 详解

正则表达式(regex), 使用boost的regex头文件, 是C++11的新标准, 但是gcc4.8.1并未完全支持, 所以使用boost库; 具体安装: http://blog.csdn.net/caroline_wendy/article/details/17282187 正则表达式的书写规范, 以ECMAScript为例, 使用迭代器可以遍历原字符串, 输出符合要求的所有字符串; 使用prefix()和suffix()方法, 可以输出前一个未匹配的字符串和后一个未匹配的字符串; 正则表

C++中正则表达式(regex) 替换(replace) 详解

正则表达式, 可以替换(replace)匹配的字符串, 使用regex_replace()函数, 需要指定替换的格式; 也可以提供参数, 进行特定的输出, 替换格式的命名空间: "boost::regex_constants::" 编程环境: gcc 4.8.1 + eclipse cdt + c++11 + boost 代码: #include <iostream> #include <string> #include <boost/regex.hpp&

linux下如何使用正则表达式regex库对通过libpcap在线抓的数据包进行筛选?

问题描述 linux下如何使用正则表达式regex库对通过libpcap在线抓的数据包进行筛选? linux下有一个用c写的通过libpcap抓取数据包的程序,如何通过正则表达式库regex对数据包进行筛选?有大神的话请贴一部分代码什么的,,, 解决方案 libpcap程序里,主体通过pcap_loop或者pcap_dispatch进行循环,需要提供报文的回调函数 在回调函数里面,对报文进行解析,逐层剥离协议头(ip->tcp->7层) 根据需要进行7层解析(例如解析http字段,可选) 对解