首页 > 编程开发 > .Net .NET下正则表达式应用四例

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

时间2009-04-29 22:05:05作者
本文关键词:                     
1.确认有效电子邮件格式bhd就爱技术网

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

Visual Basic代码示例bhd就爱技术网

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#代码示例bhd就爱技术网

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.清理输入字符串bhd就爱技术网

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

Visual Basic代码示例bhd就爱技术网
bhd就爱技术网

Function CleanInput(strIn As String) As String' Replace 
invalid characters with empty strings.Return Regex.Replace(strIn, "[^w.@-]", "")End Function
C#代码示例bhd就爱技术网

String CleanInput(string strIn)
{// Replace invalid characters with empty strings.return Regex.Replace(strIn, @"[^w.@-]", "");}
3.更改日期格式bhd就爱技术网

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

Visual Basic代码示例bhd就爱技术网

Function MDYToDMY(input As String) As StringReturn Regex.Replace(input, _"b(
?d{1,2})/(?d{1,2})/(?d{2,4})b", _"${day}-${month}-${year}")End Function
C#代码示例bhd就爱技术网

String MDYToDMY(String input)
{return Regex.Replace(input,"/b(?/d{1,2})/(?/d{1,2})/(?/d{2,4})/b","${day}-${month}-${year}");}
Regex替换模式bhd就爱技术网

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

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

4.提取URL 信息bhd就爱技术网

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

Visual Basic代码示例bhd就爱技术网

Function Extension(url As String) As StringDim r As New Regex("^(?w+)://[^/]+?(?:d+)?/", 
_RegexOptions.Compiled)Return r.Match(url).Result("${proto}${port}")End Function
C#代码示例bhd就爱技术网

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