.NET下正则表达式应用四例
创始人
2024-03-24 02:31:37
0

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(?d{1,2})/(?d{1,2})/(?d{2,4})b", _

  "${day}-${month}-${year}")

  End Function


C#代码示例

String MDYToDMY(String input)

  {

  return Regex.Replace(input,

  "\b(?\d{1,2})/(?\d{1,2})/(?\d{2,4})\b",

  "${day}-${month}-${year}");

  }

Regex替换模式

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

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

4.提取URL 信息

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

Visual Basic代码示例

Function Extension(url As String) As String

  Dim r As New Regex("^(?w+)://[^/]+?(?:d+)?/", _

  RegexOptions.Compiled)

  Return r.Match(url).Result("${proto}${port}")

  End Function

C#代码示例

String Extension(String url)

  {

  Regex r = new Regex(@"^(?w+)://[^/]+?(?:d+)?/",

  RegexOptions.Compiled);

  return r.Match(url).Result("${proto}${port}");

  }

 

【编辑推荐】

  1. 如何在PHP中使用正则表达式
  2. 浅谈Java中正则表达式的优化方法

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...