Javascript 正则表达式对象
生活随笔
收集整理的這篇文章主要介紹了
Javascript 正则表达式对象
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
[b]定義 RegExp[/b]
聲明javascript 正則表達式
var patrn1 = new RegExp("abc", "igm");
var patrn2 = RegExp("abc", "igm");
var patrn3 = /abc/igm;
正則表達式對象 (/i g m)
此對象包含正則表達式模式以及標識如何應用該模式的標志。
g(全局搜索出現的所有 pattern)
i(忽略大小寫)
m(多行搜索)
備注:標志可選項,可以組合使用
[b]RegExp 對象的屬性[/b]
global RegExp 對象是否具有標志 g。
ignoreCase RegExp 對象是否具有標志 i。
lastIndex 一個整數,標示開始下一次匹配的字符位置。
multiline RegExp 對象是否具有標志 m。
source 正則表達式的源文本。
見代碼說明:
var patrn=/abc/;
//source: 表達式文本, 只讀
alert(patrn.source); //abc
//ignoreCase: 是否有指定模式標志i, 只讀; i 表示不不區分大小寫
alert(patrn.ignoreCase); //false
//global: 是否有指定 g, 只讀; g 表示匹配全部
alert(patrn.global); //false
//multiline: 是否有指定 m, 只讀; m 表示多行匹配
alert(patrn.multiline); //false
//lastIndex: 最好一次的匹配位置, 是可讀寫屬性.
alert(patrn.lastIndex); //0; 在匹配之前它肯定是 0
[b]RegExp 對象的方法[/b]
學習最常用的 test exec match search replace split 6個方法
[color=orange]1)test()[/color]
test() 方法檢索字符串中的指定值。返回值是 true 或 false。
如:
var patrn = /12/;
alert(patrn.test("12")); //true
[color=orange]2) exec()[/color]
exec() 方法檢索字符串中的指定值。返回值是被找到的值。如果沒有發現匹配,則返回 null。
var value = "123,213,312";
var patrn = /123/;
alert(patrn.exec(value)); //123
[color=orange]3) match()[/color]
match()得到查詢數組
var value= "123,213,312";
var patrn = /123/;
var arrMactches = value.match(patrn)
for (var i=0;i < arrMactches.length ; i++)
{
alert(arrMactches[i]); //123
}
[color=orange]4) search [/color]
search()返回搜索位置 類似于indexof
var value = "123,213,312";
var patrn = /213/;
alert(value.search(patrn)); //4
[color=orange]5) replace 替換字符 利用正則替換[/color]
var value = "123,213,312";
var patrn = /213/;
alert(value.replace(patrn,"test"));//123,test,312
[color=orange]6)split 利用正則分割數組[/color]
var value= "123,213,312,";
var patrn= /\,/;
var arrdata = value.split(patrn);
for (var i = 0; i < arrdata.length; i++)
{
alert(arrdata[i]); //123,213,312
}
聲明javascript 正則表達式
var patrn1 = new RegExp("abc", "igm");
var patrn2 = RegExp("abc", "igm");
var patrn3 = /abc/igm;
正則表達式對象 (/i g m)
此對象包含正則表達式模式以及標識如何應用該模式的標志。
g(全局搜索出現的所有 pattern)
i(忽略大小寫)
m(多行搜索)
備注:標志可選項,可以組合使用
[b]RegExp 對象的屬性[/b]
global RegExp 對象是否具有標志 g。
ignoreCase RegExp 對象是否具有標志 i。
lastIndex 一個整數,標示開始下一次匹配的字符位置。
multiline RegExp 對象是否具有標志 m。
source 正則表達式的源文本。
見代碼說明:
var patrn=/abc/;
//source: 表達式文本, 只讀
alert(patrn.source); //abc
//ignoreCase: 是否有指定模式標志i, 只讀; i 表示不不區分大小寫
alert(patrn.ignoreCase); //false
//global: 是否有指定 g, 只讀; g 表示匹配全部
alert(patrn.global); //false
//multiline: 是否有指定 m, 只讀; m 表示多行匹配
alert(patrn.multiline); //false
//lastIndex: 最好一次的匹配位置, 是可讀寫屬性.
alert(patrn.lastIndex); //0; 在匹配之前它肯定是 0
[b]RegExp 對象的方法[/b]
學習最常用的 test exec match search replace split 6個方法
[color=orange]1)test()[/color]
test() 方法檢索字符串中的指定值。返回值是 true 或 false。
如:
var patrn = /12/;
alert(patrn.test("12")); //true
[color=orange]2) exec()[/color]
exec() 方法檢索字符串中的指定值。返回值是被找到的值。如果沒有發現匹配,則返回 null。
var value = "123,213,312";
var patrn = /123/;
alert(patrn.exec(value)); //123
[color=orange]3) match()[/color]
match()得到查詢數組
var value= "123,213,312";
var patrn = /123/;
var arrMactches = value.match(patrn)
for (var i=0;i < arrMactches.length ; i++)
{
alert(arrMactches[i]); //123
}
[color=orange]4) search [/color]
search()返回搜索位置 類似于indexof
var value = "123,213,312";
var patrn = /213/;
alert(value.search(patrn)); //4
[color=orange]5) replace 替換字符 利用正則替換[/color]
var value = "123,213,312";
var patrn = /213/;
alert(value.replace(patrn,"test"));//123,test,312
[color=orange]6)split 利用正則分割數組[/color]
var value= "123,213,312,";
var patrn= /\,/;
var arrdata = value.split(patrn);
for (var i = 0; i < arrdata.length; i++)
{
alert(arrdata[i]); //123,213,312
}
總結
以上是生活随笔為你收集整理的Javascript 正则表达式对象的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: css语言基础--css的选择符语法
- 下一篇: Java基础01 从HelloWorld