程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> C#中使用正則表達式

C#中使用正則表達式

編輯:.NET實例教程

正則表達式是一種用於模式匹配和替換的強有力工具,它通過構建一個表達式對輸入的字符串進行模式匹配,然後返回處理後的結果,如果你對它還不了解,請繼續往下看。
  
  以最廣泛的WEB身份驗證為例:我們從頁面中接收到輸入的用戶名,存入變量Temp_UserName,此時變量中可能含有惡意的信息,我們想要用戶名中只包含英文字符,數字和下劃線,就要構造正則表達式對Temp_UserName進行處理,在C#中是這樣進行的:

  我們要使用的是System.Text.RegularExpressions.Regex.Replace(字符串,正則表達式,替換字符)這一靜態方法,其中參數字符串當然就是我們的Temp_UserName了,正則表達式我先給出"\\W",替換字符是"",整個方法完成後就是

System.Text.RegularExpressions.Regex.Replace(Temp_UserName,"\\W","");
//它用來替換與正則表達式匹配成功的字符

下面著重說一下C#中正則表達式的構造:
C#正則表達式的構造和字符串相同,都是放在引號當中,形式如"look"。
正則表達式中提供了專門的“元字符”,它是在正則表達式中具有特殊意義的專用字符,常用的元字符包括"+","*","?","\\s","\\S","\\d","\\w","\\W",區分大小寫,下面就對元字符進行說明:
"+" 如"Lo+"匹配L後面o出現一次或多次的字符串,如"Love","Look"都是
"*" 待測試
"?" 待測試
"\\s" 匹配單個空格符,包括TAB和換行符。
"\\S" 匹配除單個空格符之外的所有字符。
"\\d" 匹配從0到0的數字。
"\\w" 匹配字母、數字和下劃線。
"\\W" 匹配所有與\\w不匹配的字符。(文中第一個例子就是用了這個元字符,將所有的單引號和空格以及其它非法字符都去掉了)

正則表達式中還提供了專門的定位符,它包括:"^","{$body}quot;,"\\b"


正則表達式中還提供了專門的范圍介定符"[]",否定符[^]
[a-z] 表示26個小寫字母中的任意一個
[abcd] 表示abcd這四個字母中的任意一個
[0-9] 表示10個數字
[^a-z] 表示除26個小寫字母以外的字符  


 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved