.NET下正则表达式应用的四个示例

示例|正则

  1.确认有效电子邮件格式

  下面的代码示例使用静态 Regex.IsMatch 方法验证一个字符串是否为有效电子邮件格式。如果字符串包含一个有效的电子邮件地址,则 IsValidEmail 方法返回 true,否则返回 false,但不采取其他任何操作。您可以使用 IsValidEmail,在应用程序将地址存储在数据库中或显示在 ASP.NET 页中之前,筛选出包含无效字符的电子邮件地址。

[Visual Basic]
Function IsValidEmail(strIn As String) As Boolean
' Return true if strIn is in valid e-mail format.
Return Regex.IsMatch(strIn, ("^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$")
End Function

[C#]
bool IsValidEmail(string strIn)
{
// Return true if strIn is in valid e-mail format.
return Regex.IsMatch(strIn, @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$");
}
  2.清理输入字符串

  下面的代码示例使用静态 Regex.Replace 方法从字符串中抽出无效字符。您可以使用这里定义的 CleanInput 方法,清除掉在接受用户输入的窗体的文本字段中输入的可能有害的字符。CleanInput 在清除掉除 @、-(连字符)和 .(句点)以外的所有非字母数字字符后返回一个字符串。

[Visual Basic]
Function CleanInput(strIn As String) As String
' Replace invalid characters with empty strings.
Return Regex.Replace(strIn, "[^\w\.@-]", "")
End Function

[C#]
String CleanInput(string strIn)
{
// Replace invalid characters with empty strings.
return Regex.Replace(strIn, @"[^\w\.@-]", "");
}
  3.更改日期格式

  以下代码示例使用 Regex.Replace 方法来用 dd-mm-yy 的日期形式代替 mm/dd/yy 的日期形式。

[Visual Basic]
Function MDYToDMY(input As String) As String
Return Regex.Replace(input, _
"\b(?<month>\d{1,2})/(?<day>\d{1,2})/(?<year>\d{2,4})\b", _
"${day}-${month}-${year}")
End Function

[C#]
String MDYToDMY(String input)
{
return Regex.Replace(input,
"\\b(?<month>\\d{1,2})/(?<day>\\d{1,2})/(?<year>\\d{2,4})\\b",
"${day}-${month}-${year}");
}
  Regex 替换模式

  本示例说明如何在 Regex.Replace 的替换模式中使用命名的反向引用。其中,替换表达式 ${day} 插入由 (?<day>...) 组捕获的子字符串。

  有几种静态函数使您可以在使用正则表达式操作时无需创建显式正则表达式对象,而 Regex.Replace 函数正是其中之一。如果您不想保留编译的正则表达式,这将给您带来方便

  4.提取 URL 信息

  以下代码示例使用 Match.Result 来从 URL 提取协议和端口号。例如,“http://www.contoso.com:8080/letters/readme.html”将返回“http:8080”。

[Visual Basic]
Function Extension(url As String) As String
Dim r As New Regex("^(?<proto>\w+)://[^/]+?(?<port>:\d+)?/", _
RegexOptions.Compiled)
Return r.Match(url).Result("${proto}${port}")
End Function

[C#]
String Extension(String url)
{
Regex r = new Regex(@"^(?<proto>\w+)://[^/]+?(?<port>:\d+)?/",
RegexOptions.Compiled);
return r.Match(url).Result("${proto}${port}");
}

时间: 2024-08-01 10:04:25

.NET下正则表达式应用的四个示例的相关文章

下拉框select的绑定示例_javascript技巧

根据文本绑定text var locationCity = productViewObj.Product.LocationCity; var countCity = $("#slCity option").length; for (var i = 0; i < countCity; i++) { if ($("#slCity").get(0).options[i].text == locationCity) { $("#slCity").g

select 1 什么情况下用?能否给个示例?还有联合查询示例?

问题描述 select 1 什么情况下用?能否给个示例?还有联合查询示例? 解决方案 select 1 本身没有什么意义,平时用来验证存在与不存在select t1.a, t1.b from t1where t1.c = ? and exist (select 1 from t2 where t2.a = ?)大致就这么个意思,个人愚见!

.NET下正则表达式应用四例

1.确认有效电子邮件格式 下面的代码示例使用静态 Regex.IsMatch 方法验证一个字符串是否为有效电子邮件格式.如果字符 串包含一个有效的电子邮件地址,则 IsValidEmail 方法返回 true,否则返回 false,但不采取其他任 何操作.您可以使用 IsValidEmail,在应用程序将地址存储在数据库中或显示在ASP.NET 页中之前,筛 选出包含无效字符的电子邮件地址. Visual Basic代码示例 Function IsValidEmail(strIn As Stri

在Linux系统下一键重新安装WordPress的脚本示例_php技巧

网站可能时不时的要迁移,或者误操作,数据库没了,所以,我为了省时间,写了个wordpress一键重新安装的脚本. 我这只是写个大概的.大家可以根据自己的需要修改脚本. 使用条件: 我这个脚本主要用在网站迁移的情况下,完全重新安装时候用的.也就是说,我这个操作只导入数据库等操作.那些wordpress的主题和插件等文件我并没有用在下面的脚本,需要的话,你可以自己改(下面会提到). 准备以下文件:     原来wordpress的配置文件wp-config.php     原来的wordpress数

WinXP下USB驱动开发(四)

第3节       设计说明 3.1.       概要设计 该任务主要包括上位机USB驱动开发.LPC2440 下位机程序开发.调试三部分.其中LPC2440 下位机程序开发部分已经完成,不需要再行设计和开发.因此接下来的任务主要由上位机USB 驱动开发和调试两部分构成.严格来说调试又分检测软件的编写和整体调试两部分.因此我们的设计工作主要如下几部分(图3-1-1). 概要设计如下: 上位机USB驱动设计:采用WDM驱动设计模式开发,遵循严格的USB2.0规范,实现即插即用.数据传输等驱动功能

正则表达式问号的四种用法详解_正则表达式

原文符号 因为?在正则表达式中有特殊的含义,所以如果想匹配?本身,则需要转义,\? 有无量词 问号可以表示重复前面内容的0次或一次,也就是要么不出现,要么出现一次. 非贪婪匹配 贪婪匹配 在满足匹配时,匹配尽可能长的字符串,默认情况下,采用贪婪匹配 string pattern1 = @"a.*c"; // greedy match Regex regex = new Regex(pattern1); regex.Match("abcabc"); // return

php使用curl和正则表达式抓取网页数据示例_php实例

利用curl和正则表达式做的一个针对磨铁中文网非vip章节的小说抓取器,支持输入小说ID下载小说. 依赖项:curl 可以简单的看下,里面用到了curl ,正则表达式,ajax等技术,适合新手看看.在本地测试,必须保证联网并且确保php开启curl的mode SpiderTools.class.php 复制代码 代码如下: <?php   session_start();  //封装成类 开启这些自动抓取文章   #header("Refresh:30;http://www.test.co

python下用mysqldb连接使用数据库示例

第一步:连接 import MySQLdb #首先需要引入mysqldb即Python 连接 MySQL 的模块. conn=MySQLdb.connect(host="localhost",user="root",passwd="")#此处等价于缺省值时即conn=MySQLdb.connect() cur = conn.cursor() #创建游标,用于发送sql指令这样就可以用游标cur发送sql指令给mysql了. 第二步:操作 1.创建

详解基于Linux下正则表达式(基本正则和扩展正则命令使用实例)

前言 正则表达式应用广泛,在绝大多数的编程语言都可以完美应用,在Linux中,也有着极大的用处. 使用正则表达式,可以有效的筛选出需要的文本,然后结合相应的支持的工具或语言,完成任务需求. 在本篇博客中,我们使用grep/egrep来完成对正则表达式的调用,其实也可以使用sed等工具,但是sed的使用极大的需要正则表达式,为了在后面sed篇的书写,就只能这样排序了,有需要的朋友可以把这两篇一起来看. 正则表达式的类型 正则表达式可以使用正则表达式引擎实现,正则表达式引擎是解释正则表达式模式并使用