C#常用的正则工具类写法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#常用的正则工具类写法相关的知识,希望对你有一定的参考价值。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;

namespace ConsoleApplication1
{
    /// <summary>
    /// 字符串正则匹配帮助类
    /// </summary>
    public static class RegexHelp
    {
        /// <summary>
        /// 返回单个正则匹配值
        /// </summary>
        /// <param name="value">字符串</param>
        /// <param name="regex">正则表达式字符串</param>
        /// <returns>字符串类型</returns>
        public static string ToRegexString(this string value, string regex)
        {

            if (value != null)
            {
                Regex re = new Regex(regex);
                Match m = re.Match(value);
                if (m.Success)
                {
                    return m.Value;
                }
                else
                {
                    return null;
                }

            }
            else
            {
                return null;
            }

        }
        /// <summary>
        /// 返回正则匹配字符串数组
        /// </summary>
        /// <param name="value">字符串</param>
        /// <param name="regex">正刚表达式</param>
        /// <returns>字符串数组</returns>
        public static String[] ToRegexStringArray(this string value, string regex)
        {
            String[] array = { };
            if (value != null)
            {
                  //兼容多行匹配模式
                Regex rg = new Regex(regex, RegexOptions.Multiline);
                MatchCollection mc = rg.Matches(value);
                if (mc.Count > 0)
                {
                    int group = mc.Count;
                    array = new String[group];
                    for (int i = 0; i < group; i++)
                    {
                        array[i] = mc[i].Value;
                    }
                }

            }
            return array;
        }
        /// <summary>
        /// 判断是否匹配
        /// </summary>
        /// <param name="value">字符串</param>
        /// <param name="regex">正则表达式</param>
        /// <returns>bool</returns>
        public static bool IsRegex(this string value, string regex)
        {
            if (value != null)
            {
                Regex reg = new Regex(regex);
                return reg.IsMatch(value);
            }
            else
            {
                return false;
            }

        }

    }
}

  

以上是关于C#常用的正则工具类写法的主要内容,如果未能解决你的问题,请参考以下文章

C#常用代码片段备忘

记录C#常用的代码片段

15Java常用类(数组工具类Arrays)基本类型包装类(Integer类)正则表达式String的split(String regex)和replaceAll(String regex, (代码片

C#正则表达式匹配字符串

C#常用的异步写法

C#代码实现邮箱验证C#中及一些常用的正则表达式