[Code] C#與js的正則表達式
元字符:
單個字符: . []
限定符: * + ? {n} {n,} {n,m}
頭尾: ^ $‘
其他: | ()
正則表達式在js和C#中都有.
C#中:
創建:
var regex = new Regex("\\d");
匹配:
語法:bool IsMatch(string input)
var b = regex.IsMatch(str);
替換:
語法:static string Replace(string input, string pattern, string replacement);
var str = Regex.Replace(str,"\\d","數字");
提取:
語法:MatchCollection Matches(string input)
var mts = regex.Matches(str);
===========================================================================
JS中:
創建:
var regex = new RegExp(‘\\d‘); \\需要轉義 備註:i,m,g分別對應忽略大小寫,匹配多行,全局匹配
var regex = /\d/; 字面量方式不需要轉義
匹配:
boolean RegExp.test(string);
var str = ‘a1b1c1‘; var regex = /\d/; alert( regex.test(str)); //彈出true,匹配到數字
替換:
var str = ‘a1b1c1‘; str.replace(/(\d).*(\d)/,‘$2,$1‘) 結果:a1,1 $1和$2表示匹配到的第一個和第二個結果.
提取:
objs RegExp.exec(str) 返回一個類似數組的對象
var str = ‘a1b1c1‘; var regex=/\d/; var objs = regex.exec(str); 結果:objs[0] = 1
[Code] C#與js的正則表達式