国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

.NET下正則表達式應用的四個示例

2024-07-10 13:11:29
字體:
來源:轉載
供稿:網友
  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/[email protected]]", "")
end function

[c#]
string cleaninput(string strin)
{
// replace invalid characters with empty strings.
return regex.replace(strin, @"[^/w/[email protected]]", "");
}

  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,
"http://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}");
}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中西区| 顺昌县| 普陀区| 吉木乃县| 太康县| 平远县| 霞浦县| 黄陵县| 迁安市| 巩义市| 茌平县| 浑源县| 平定县| 廊坊市| 招远市| 永川市| 瓮安县| 洛阳市| 托里县| 南澳县| 界首市| 佳木斯市| 张家川| 丹棱县| 库伦旗| 曲水县| 襄汾县| 鄄城县| 瑞丽市| 洪洞县| 绍兴县| 涟水县| 滨海县| 大同县| 江安县| 霸州市| 团风县| 临高县| 大名县| 张北县| 大名县|