javascriptRegex用法:
複製代碼 代碼如下:function checkreg(myreg,mytext)
{
if(myreg.test(mytext)
{
alert("ok");
return true;
}
else
{
return false;
}
}
//另一種寫法 複製代碼 代碼如下:function checkreg(myreg,mytext)
{
var pattern = myreg; //或者 var pattern = new RegExp(myreg,"gi");
if(pattern.test(mytext))
{
alert("ok");
}
}
使用RegExp的顯式建構函式,文法為:new RegExp("pattern"[,"flags"])。
使用RegExp的隱式建構函式,採用純文字格式:/pattern/[flags]。
pattern部分為要使用的Regex模式文本,是必須的。在第一種方式中,pattern部分以JavaScript字串的形式存在,需要使用雙引號或單引號括起來;在第二種方式中,pattern部分嵌套在兩個“/”之間,不能使用引號。
flags部分設定Regex的標誌資訊,是可選項。如果設定flags部分,在第一種方式中,以字串的形式存在;在第二種方式中,以文本的形式緊接在最後一個“/”字元之後。flags可以是以下標誌字元的組合。
g是全域標誌。如果設定了這個標誌,對某個文本執行搜尋和替換操作時,將對文本中所有匹配的部分起作用。如果不設定這個標誌,則僅搜尋和替換最早匹配的內容。
i是忽略大小寫標誌。如果設定了這個標誌,進行匹配比較時,將忽略大小寫。
m是多行標誌。如果不設定這個標誌,那麼元字元“^”只與整個被搜尋字串的開始位置相匹配,而元字元“markerrdquo;只與被搜尋字串的結束位置相匹配。如果設定了這個標誌,“^”還可以與被搜尋字串中的“\n”或“\r”之後的位置(即下一行的行首)相匹配,而“markerrdquo;還可以與被搜尋字串中的“\n”或“\r”之後的位置(即下一行的行尾)相匹配。
由於JavaScript字串中的“\”是一個逸出字元,因此,使用顯式建構函式建立RegExp執行個體對象時,應將原始Regex中的“\”用“\\”替換。
onkeyup="value=value.replace(/[^0-9\.]/g,'');" //Regex還可以用來替換字串。
下面是指令碼之家編輯特別增加的一些:複製代碼 代碼如下:function cleanAndPaste( html ) {
html = html.replace(/<\/?SPAN[^>]*>/gi, "" );
html = html.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3") ;
html = html.replace(/<(\w[^>]*) style="([^"]*)"([^>]*)/gi, "<$1$3") ;
html = html.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3") ;
html = html.replace(/<\\?\?xml[^>]*>/gi, "") ;
html = html.replace(/<\/?\w+:[^>]*>/gi, "") ;
html = html.replace(/ /, " " );
insertHTML( html ) ;
}
上面是用正則實現的替換代碼,大家一定要學會這個了,用的比較多。更多文章可以參考指令碼之家的Regex欄目。