using System.Globalization;
using System.Text.RegularExpressions;
/// <summary>
/// 正则表达式帮助类
/// </summary>
public sealed class RegexHelper
{
private RegexHelper()
{
}
/// <summary>
/// 清除包含'字符串
/// </summary>
public const string CLEAN_STRING = @"[']";
/// <summary>
/// 验证字符串是否为字符begin-end之间
/// </summary>
public const string IS_VALID_BYTE = @"^[A-Za-z0-9]{#0#,#1#}$";
/// <summary>
/// 验证字符串是否为年月日
/// </summary>
public const string IS_VALID_DATE =
@"^2\d{3}-(?:0?[1-9]|1[0-2])-(?:0?[1-9]|[1-2]\d|3[0-1])(?:0?[1-9]|1\d|2[0-3]):(?:0?[1-9]|[1-5]\d):(?:0?[1-9]|[1-5]\d)$";
/// <summary>
/// 验证字符串是否为小数
/// </summary>
public const string IS_VALID_DECIMAL = @"[0].\d{1,2}|[1]";
/// <summary>
/// 验证字符串是否为EMAIL
/// </summary>
public const string IS_VALID_EMAIL =
@"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
/// <summary>
/// 验证字符串是否为IP
/// </summary>
public const string IS_VALID_IP =
@"^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$";
/// <summary>
/// 验证字符串是否为后缀名
/// </summary>
public const string IS_VALID_POSTFIX = @"\.(?i:{0})$";
/// <summary>
/// 验证字符串是否为电话号码
/// </summary>
public const string IS_VALID_TEL = @"(\d+-)?(\d{4}-?\d{7}|\d{3}-?\d{8}|^\d{7,8})(-\d+)?";
/// <summary>
/// 验证字符串是否为URL
/// </summary>
public const string IS_VALID_URL = @"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$";
#region 替换字符串
/// <summary>
/// 替换字符串
/// </summary>
/// <param name="input">输入字符串</param>
/// <param name="regex">正则表达式</param>
/// <returns>替换后字符串</returns>
public static string ReplaceInput(string input, string regex)
{
return Regex.Replace(input, regex, string.Empty);
}
/// <summary>
/// 替换字符串
/// </summary>
/// <param name="input">输入字符串</param>
/// <param name="regex">正则表达式</param>
/// <param name="replace">替换字符串</param>
/// <returns>替换后字符串</returns>
public static string ReplaceInput(string input, string regex, string replace)
{
return Regex.Replace(input, regex, replace);
}
#endregion
#region 验证字符串
/// <summary>
/// 验证字符串
/// </summary>
/// <param name="input">输入字符串</param>
/// <param name="regex">正则表达式</param>
/// <returns>是否验证通过</returns>
public static bool CheckInput(string input, string regex)
{
return Regex.IsMatch(input, regex);
}
#endregion
#region 常用方法
/// <summary>
/// 验证字符串
/// </summary>
/// <param name="input">输入字符串</param>
/// <param name="regex">正则表达式</param>
/// <param name="begin">开始数字</param>
/// <param name="end">结尾数字</param>
/// <returns>是否验证通过</returns>
public static bool ValidByte(string input, string regex, int begin, int end)
{
bool ret = false;
if (!string.IsNullOrEmpty(regex))
{
string rep = regex.Replace("#0#", begin.ToString(CultureInfo.InvariantCulture));
rep = rep.Replace("#1#", end.ToString(CultureInfo.InvariantCulture));
ret = CheckInput(input, rep);
}
return ret;
}
/// <summary>
/// 验证字符串
/// </summary>
/// <param name="input">输入字符串</param>
/// <param name="regex">正则表达式</param>
/// <param name="fix">后缀名</param>
/// <returns>是否验证通过</returns>
public static bool ValidPostfix(string input, string regex, string fix)
{
string ret = string.Format(CultureInfo.InvariantCulture, regex, fix);
return CheckInput(input, ret);
}
#endregion
}
分享到:
相关推荐
书中提供了上百种可以在实战中使用的实例,以帮助读者使用正则表达式来处理数据和文本。对于如何使用正则表达式来解决性能不佳、误报、漏报等常见的错误以及完成一些常见的任务,本书给出了涉及基于C#、Java、...
正则表达式在现在的编程环境中应用的极其广泛,在这里我也只做一个简单的分析,希望能在大家学习正则表达式的过程中帮助到大家。
C#正则表达式 和 测试工具。很有价值的东西。 好东西,大家分享!!希望对你有帮助!一起成长。
需要验证的赶快了, 先到先得,最近刚找到,觉得对所有学习easyui的人很有帮助,特分享出来。
今天小编就为大家分享一篇Python实现正则表达式匹配任意的邮箱方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天小编就为大家分享一篇python正则表达式匹配不包含某几个字符的字符串方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
很多程序员都需要用到正则表达式,它可以帮助开发者很好的判断一个字符串是否合法: 比如判断一个手机号的格式是否正确 手机号码的匹配 填写的邮箱格式是否正确 但是呢,国内手机号的匹配还是有点难度,不仅有三...
正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符...以上内容是小编给大家介绍的常见正则表达式问题,希望本文分享对大家有所帮助。 您可能感兴趣的文章:JS正则表达式比较常见用法php
今天小编就为大家分享一篇java 正则表达式获取两个字符中间的字符串方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天小编就为大家分享一篇使用pyqt5 tablewidget 单元格设置正则表达式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天小编就为大家分享一篇python 用正则表达式筛选文本信息的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符、词或算式等。但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时。本文为你介绍10种常见的实用PHP正则表达式的...
最全面的65条最常用正则表达式都在这里了,特分享给大家,帮助大家更好地学习正则表达式
今天小编就为大家分享一篇python正则表达式匹配[]中间为任意字符的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天小编就为大家分享一篇JavaScript 正则表达式与字符串查找方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天小编就为大家分享一篇js正则表达式 匹配两个特定字符间的内容示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天小编就为大家分享一篇Python 正则表达式匹配字符串中的http链接方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
涵盖了正则表达式的语法,相信会对您有很大的帮助。 一起分享吧!
本文实例讲述了php使用正则表达式进行字符串搜索的方法。分享给大家供大家参考。具体实现方法如下: <?php $string_to_search = "jb51.net"; $regex = "/tor/"; $num_matches = preg_match($regex, $string_to_...
今天小编就为大家分享一篇python正则表达式去除两个特殊字符间的内容方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧