中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

任丘 做網(wǎng)站免費網(wǎng)站流量統(tǒng)計

任丘 做網(wǎng)站,免費網(wǎng)站流量統(tǒng)計,b2c分為哪三種模式,wordpress 不同文章不同模板Javascript之RegExp 對象 RegExp 對象 RegExp 對象表示正則表達式,它是對字符串執(zhí)行模式匹配的強大工具。 直接量語法 /pattern/attributes 創(chuàng)建 RegExp 對象的語法: new RegExp(pattern, attributes); 參數(shù) 參數(shù) pattern 是一個字符串,指…

Javascript之RegExp 對象

?

RegExp 對象

RegExp 對象表示正則表達式,它是對字符串執(zhí)行模式匹配的強大工具。

直接量語法

/pattern/attributes

創(chuàng)建 RegExp 對象的語法:

new RegExp(pattern, attributes);

參數(shù)

參數(shù) pattern 是一個字符串,指定了正則表達式的模式或其他正則表達式。

參數(shù) attributes 是一個可選的字符串,包含屬性 "g"、"i"和"m",分別用于指定全局匹配、區(qū)分大小寫的匹配和多行匹配。ECMAScript 標準化之前,不支持 m 屬性。如果pattern 是正則表達式,而不是字符串,則必須省略該參數(shù)。

返回值

一個新的 RegExp 對象,具有指定的模式和標志。如果參數(shù) pattern 是正則表達式而不是字符串,那么 RegExp() 構(gòu)造函數(shù)將用與指定的RegExp 相同的模式和標志創(chuàng)建一個新的 RegExp 對象。

如果不用 new 運算符,而將 RegExp() 作為函數(shù)調(diào)用,那么它的行為與用 new 運算符調(diào)用時一樣,只是當 pattern 是正則表達式時,它只返回pattern,而不再創(chuàng)建一個新的RegExp 對象。

拋出

SyntaxError - 如果 pattern 不是合法的正則表達式,或 attributes 含有 "g"、"i" 和"m" 之外的字符,拋出該異常。

TypeError - 如果 pattern 是 RegExp 對象,但沒有省略 attributes 參數(shù),拋出該異常。

修飾符

修飾符

描述

i

執(zhí)行對大小寫不敏感的匹配。

g

執(zhí)行全局匹配(查找所有匹配而非在找到第一個匹配后停止)。

m

執(zhí)行多行匹配。

方括號

方括號用于查找某個范圍內(nèi)的字符:

表達式

描述

[abc]

查找方括號之間的任何字符。

[^abc]

查找任何不在方括號之間的字符。

[0-9]

查找任何從 0 至 9 的數(shù)字。

[a-z]

查找任何從小寫 a 到小寫 z 的字符。

[A-Z]

查找任何從大寫 A 到大寫 Z 的字符。

[A-z]

查找任何從大寫 A 到小寫 z 的字符。

[adgk]

查找給定集合內(nèi)的任何字符。

[^adgk]

查找給定集合外的任何字符。

(red|blue|green)

查找任何指定的選項。

元字符

元字符(Metacharacter)是擁有特殊含義的字符:

元字符

描述

.

查找單個字符,除了換行和行結(jié)束符。

\w

查找單詞字符。

\W

查找非單詞字符。

\d

查找數(shù)字。

\D

查找非數(shù)字字符。

\s

查找空白字符。

\S

查找非空白字符。

\b

查找位于單詞的開頭或結(jié)尾的匹配。

\B

查找不處在單詞的開頭或結(jié)尾的匹配。

\0

查找 NUL 字符。

\n

查找換行符。

\f

查找換頁符。

\r

查找回車符。

\t

查找制表符。

\v

查找垂直制表符。

\xxx

查找以八進制數(shù) xxx 規(guī)定的字符。

\xdd

查找以十六進制數(shù) dd 規(guī)定的字符。

\uxxxx

查找以十六進制數(shù) xxxx 規(guī)定的 Unicode 字符。

量詞

量詞

描述

n+

匹配任何包含至少一個 n 的字符串。

n*

匹配任何包含零個或多個 n 的字符串。

n?

匹配任何包含零個或一個 n 的字符串。

n{X}

匹配包含 X 個 n 的序列的字符串。

n{X,Y}

匹配包含 X 或 Y 個 n 的序列的字符串。

n{X,}

匹配包含至少 X 個 n 的序列的字符串。

n$

匹配任何結(jié)尾為 n 的字符串。

^n

匹配任何開頭為 n 的字符串。

?=n

匹配任何其后緊接指定字符串 n 的字符串。

?!n

匹配任何其后沒有緊接指定字符串 n 的字符串。

RegExp 對象屬性

FF: Firefox, IE: Internet Explorer

屬性

描述

FF

IE

global

RegExp 對象是否具有標志 g。

1

4

ignoreCase

RegExp 對象是否具有標志 i。

1

4

lastIndex

一個整數(shù),標示開始下一次匹配的字符位置。

1

4

multiline

RegExp 對象是否具有標志 m。

1

4

source

正則表達式的源文本。

1

4

RegExp 對象方法

FF: Firefox, IE: Internet Explorer

方法

描述

FF

IE

compile

編譯正則表達式。

1

4

exec

檢索字符串中指定的值。返回找到的值,并確定其位置。

1

4

test

檢索字符串中指定的值。返回 true 或 false。

1

4

支持正則表達式的 String 對象的方法

FF: Firefox, IE: Internet Explorer

方法

描述

FF

IE

search

檢索與正則表達式相匹配的值。

1

4

match

找到一個或多個正則表達式的匹配。

1

4

replace

替換與正則表達式匹配的子串。

1

4

split

把字符串分割為字符串數(shù)組。

1

4

?

1.? RegExp 對象3 個方法:test()、exec() 以及 compile()。

1.1 test()我只用過這個,呵呵~~

test() 方法檢索字符串中的指定值。返回值是 true 或false。

例:

<scripttype="text/javascript">

var patt1=newRegExp("e");

document.write(patt1.test("Thebest things in life are free"));

</script>

輸出:true

1.2exec()

exec() 方法檢索字符串中的指定值。返回值是被找到的值。如果沒有發(fā)現(xiàn)匹配,則返回null。

例:

<scripttype="text/javascript">

var patt1=newRegExp("e");

document.write(patt1.exec("Thebest things in life are free"));

</script>

輸出:e

???????? 1.3 compile()

compile() 方法用于改變 RegExp。

compile() 既可以改變檢索模式,也可以添加或刪除第二個參數(shù)。

例:

<scripttype="text/javascript">

var patt1=newRegExp("e");

document.write(patt1.test("Thebest things in life are free"));

patt1.compile("d");

document.write(patt1.test("Thebest things in life are free"));

</script>

???????? ?? 輸出:truefalse

2.??????修飾符i的定義和用法:用于執(zhí)行對大小寫不敏感的匹配。

?

語法

?new RegExp("regexp","i")

直接量語法:

?/regexp/i

瀏覽器支持:所有主流瀏覽器都支持 i 修飾符。

例:

<scripttype="text/javascript">

var str = "VisitW3School";

var patt1 = /w3school/i;

document.write(str.match(patt1));//注意這里的match方法是

</script>

??輸出:W3School

3.? 修飾符g定義和用法:用于執(zhí)行全局匹配(查找所有匹配而非在找到第一個匹配后停止)。

語法

newRegExp("regexp","g")

直接量語法:

?/regexp/g

瀏覽器支持:所有主流瀏覽器都支持 g 修飾符。

1對 "is" 進行全局搜索,輸出is,is

<scripttype="text/javascript">

var str="Is this all thereis?";

var patt1=/is/g;

document.write(str.match(patt1));

</script>

2對 "is" 進行全局且大小寫不敏感的搜索:

<scripttype="text/javascript">

var str="Is this all thereis?";

var patt1=/is/gi;

document.write(str.match(patt1));

</script>

4.? [abc] 表達式定義和用法:用于查找方括號之間的任何字符。

方括號內(nèi)的字符可以是任何字符或字符范圍。

語法

new RegExp("[abc]")

直接量語法:

?/[abc]/

瀏覽器支持:所有主流瀏覽器都支持 [abc] 表達式。

例:在字符串中對字符范圍 [a-h] 進行全局搜索,下面例子輸出h,a,h,e,e

<scripttype="text/javascript">

var str="Is this all thereis?";

var patt1=/[a-h]/g;

document.write(str.match(patt1));

</script>

?

5.? [abc] 表達式定義和用法:用于查找任何不在方括號之間的字符。

方括號內(nèi)的字符可以是任何字符或字符范圍。

語法

?new RegExp("[^xyz]")

直接量語法:

?/[^xyz]/

瀏覽器支持:所有主流瀏覽器都支持 [^abc] 表達式。

例:對不在字符范圍 [a-h] 內(nèi)的字符進行全局搜索,輸出結(jié)果:

I,s, ,t,i,s, ,l,l,,t,r, ,i,s,??

<scripttype="text/javascript">

var str="Is this all thereis?";

var patt1=/[^a-h]/g;

document.write(str.match(patt1));

</script>

6.? . 元字符定義和用法:用于查找單個字符,除了換行和行結(jié)束符。

語法

new RegExp("regexp.")

直接量語法:

?/regexp./

瀏覽器支持:所有主流瀏覽器都支持 . 元字符。

例:hat,hot

<scripttype="text/javascript">

var str="That's hot!";

var patt1=/h.t/g;

document.write(str.match(patt1));

</script>

7.? \w 元字符定義和用法:用于查找單詞字符。

語法

?new RegExp("\w")

直接量語法:

?/\w/

瀏覽器支持

所有主流瀏覽器都支持 \w 元字符。

例:對字符串中的單詞字符進行全局搜索,輸出:G,i,v,e,1,0,0

<scripttype="text/javascript">

var str="Give 100%!";

var patt1=/\w/g;

document.write(str.match(patt1));

</script><scripttype="text/javascript">

var str="Give 100%!";

var patt1=/\w/g;

document.write(str.match(patt1));

</script>

8.? \b 元字符定義和用法:用于查找位于單詞的開頭或結(jié)尾的匹配。

如果未找到匹配,則返回 null。

語法

?new RegExp("\bregexp")

直接量語法:

?/\bregexp/

瀏覽器支持

所有主流瀏覽器都支持 \b 元字符。

例: 對字符串中的單詞的開頭或結(jié)尾進行 "W3" 的全局搜索,輸出:W3

<scripttype="text/javascript">

var str="VisitW3School";

var patt1=/\bW3/g;

document.write(str.match(patt1));

</script>

9.? n+ 量詞定義和用法:匹配包含至少一個 n 的任何字符串。

語法

?new RegExp("n+")

直接量語法:

?/n+/

瀏覽器支持

所有主流瀏覽器都支持 + 量詞。

例1:對至少一個 "o" 進行全局搜索,輸出ooo,o,o,oo

<scripttype="text/javascript">

var str="Hellooo World!Hello W3School!";

var patt1=/o+/g;

document.write(str.match(patt1));

</script>

2對至少一個單詞字符進行全局搜索,輸出:Hellooo,World,Hello,W3School

<script type="text/javascript">

var str="Hellooo World!Hello W3School!";

var patt1=/\w+/g;

document.write(str.match(patt1));

</script>

10. n{X,} 量詞定義和用法:匹配包含 X 個 n 的序列的字符串。

X 必須是數(shù)字。

語法

new RegExp("n{X}")

直接量語法:

?/n{X}/

瀏覽器支持

所有主流瀏覽器都支持 {X} 量詞。

例: 對包含四位數(shù)字序列的子串進行全局搜索,輸出1000,1000

<scripttype="text/javascript">

var str="100, 1000 or10000?";

var patt1=/\d{4}/g;

document.write(str.match(patt1));

</script>

11.n$ 量詞定義和用法:匹配任何結(jié)尾為 n 的字符串。

語法

newRegExp("n$")

直接量語法:

?/n$/

瀏覽器支持

所有主流瀏覽器都支持 $ 量詞。

例:對字符串結(jié)尾的"is" 進行全局搜索,輸出is

<scripttype="text/javascript">

var str="Is this his";

var patt1=/is$/g;

document.write(str.match(patt1));

</script>

12. n^ 量詞定義和用法:匹配任何開頭為 n 的字符串。

語法

new RegExp("^n")

直接量語法:

/^n/

瀏覽器支持

所有主流瀏覽器都支持 ^ 量詞。

例:對字符串開頭的 "is" 進行全局搜索,輸出Is

<script type="text/javascript">

var str="Is this his";

var patt1=/^Is/g;

document.write(str.match(patt1));

</script>

13. ?=n 量詞定義和用法:匹配任何其后緊接指定字符串 n 的字符串。

語法

newRegExp("regexp(?=n)")

直接量語法:

?/regexp(?=n)/

瀏覽器支持:所有主流瀏覽器都支持 ?= 量詞。

例:對其后緊跟 "all" 的"is" 進行全局搜索:

<script type="text/javascript">

var str="Is this all thereis";

var patt1=/is(?= all)/;

document.write(str.match(patt1));

</script>

14. compile() 方法定義和用法:用于在腳本執(zhí)行過程中編譯正則表達式。

??? compile()方法也可用于改變和重新編譯正則表達式。

語法

RegExpObject.compile(regexp,modifier)

參數(shù)??????? 描述

Regexp:正則表達式。

Modifier:規(guī)定匹配的類型。"g" 用于全局匹配,"i"用于區(qū)分大小寫,"gi" 用于全局區(qū)分大小寫的匹配。

例:在字符串中全局搜索"man",并用 "person" 替換。然后通過 compile() 方法,改變正則表達式,用"person" 替換 "man" 或 "woman",:

<scripttype="text/javascript">

var str="Every man in theworld! Every woman on earth!";

patt=/man/g;

str2=str.replace(patt,"person");

document.write(str2+"<br/>");

patt=/(wo)?man/g;

patt.compile(patt);

str2=str.replace(patt,"person");

document.write(str2);

</script>

輸出:

Every person in the world! Everywoperson on earth!

Every person in the world! Every personon earth!

15. search() 方法定義和用法:用于檢索字符串中指定的子字符串,或檢索與正則表達式相匹配的子字符串。

語法

stringObject.search(regexp)

參數(shù)??? 描述

Regexp:該參數(shù)可以是需要在 stringObject 中檢索的子串,也可以是需要檢索的 RegExp 對象。

注釋:要執(zhí)行忽略大小寫的檢索,請追加標志 i。

返回值:stringObject 中第一個與 regexp 相匹配的子串的起始位置。

注釋:如果沒有找到任何匹配的子串,則返回 -1。

說明:search() 方法不執(zhí)行全局匹配,它將忽略標志 g。它同時忽略 regexp 的 lastIndex 屬性,并且總是從字符串的開始進行檢索,這意味著它總是返回stringObject 的第一個匹配的位置。

例1:在本例中,我們將檢索"W3School"

<scripttype="text/javascript">

var str="VisitW3School!"

document.write(str.search(/W3School/))

</script>

輸出:6

在下面的例子中,無法檢索到w3school(因為 search() 對大小寫敏感)。

<scripttype="text/javascript">

var str="VisitW3School!"

document.write(str.search(/w3school/))

</script>

輸出:-1

例2:在本例中,我們將執(zhí)行一次忽略大小寫的檢索

<scripttype="text/javascript">

var str="VisitW3School!"

document.write(str.search(/w3school/i))

</script>

輸出:6

16. match() 方法定義和用法:可在字符串內(nèi)檢索指定的值,或找到一個或多個正則表達式的匹配。

該方法類似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。

語法

stringObject.match(searchvalue)

stringObject.match(regexp)

參數(shù)???? 描述

searchvalue:必需。規(guī)定要檢索的字符串值。

regexp:必需。規(guī)定要匹配的模式的 RegExp 對象。如果該參數(shù)不是 RegExp 對象,則需要首先把它傳遞給 RegExp 構(gòu)造函數(shù),將其轉(zhuǎn)換為RegExp 對象。

返回值:存放匹配結(jié)果的數(shù)組。該數(shù)組的內(nèi)容依賴于 regexp 是否具有全局標志g。

說明:match() 方法將檢索字符串 stringObject,以找到一個或多個與 regexp 匹配的文本。這個方法的行為在很大程度上有賴于regexp 是否具有標志 g。

??

如果 regexp 沒有標志 g,那么 match() 方法就只能在stringObject 中執(zhí)行一次匹配。如果沒有找到任何匹配的文本, match() 將返回 null。否則,它將返回一個數(shù)組,其中存放了與它找到的匹配文本有關(guān)的信息。該數(shù)組的第0 個元素存放的是匹配文本,而其余的元素存放的是與正則表達式的子表達式匹配的文本。除了這些常規(guī)的數(shù)組元素之外,返回的數(shù)組還含有兩個對象屬性。index 屬性聲明的是匹配文本的起始字符在stringObject 中的位置,input 屬性聲明的是對 stringObject 的引用。

?

如果 regexp 具有標志 g,則 match() 方法將執(zhí)行全局檢索,找到stringObject 中的所有匹配子字符串。若沒有找到任何匹配的子串,則返回 null。如果找到了一個或多個匹配子串,則返回一個數(shù)組。不過全局匹配返回的數(shù)組的內(nèi)容與前者大不相同,它的數(shù)組元素中存放的是stringObject 中所有的匹配子串,而且也沒有 index 屬性或 input 屬性。

?

注意:在全局檢索模式下,match() 即不提供與子表達式匹配的文本的信息,也不聲明每個匹配子串的位置。如果您需要這些全局檢索的信息,可以使用RegExp.exec()。

例2:使用全局匹配的正則表達式來檢索字符串中的所有數(shù)字

<scripttype="text/javascript">

var str="1 plus 2 equal3"

document.write(str.match(/\d+/g))

</script>

輸出:1,2,3

http://www.risenshineclean.com/news/58518.html

相關(guān)文章:

  • 學(xué)校網(wǎng)站建設(shè)方案模板下載怎么制作公司網(wǎng)站
  • 網(wǎng)站建設(shè)功能是什么微信軟文案例
  • 慈云寺網(wǎng)站建設(shè)外鏈吧官網(wǎng)
  • 咨詢公司起名用字大全寧波seo關(guān)鍵詞培訓(xùn)
  • 短視頻營銷推廣策略上海做網(wǎng)站優(yōu)化
  • 定制網(wǎng)站開發(fā)一般多少錢百度搜索官方網(wǎng)站
  • 做粉絲網(wǎng)站會侵權(quán)嗎如何快速推廣網(wǎng)上國網(wǎng)
  • 免費素材庫短視頻素材網(wǎng)站互動營銷名詞解釋
  • 接網(wǎng)站開發(fā)的公司電話線上推廣是做什么的
  • 南寧企業(yè)網(wǎng)站建設(shè)包頭整站優(yōu)化
  • 網(wǎng)站建設(shè)上機考試怎么找一手app推廣代理
  • 網(wǎng)頁與網(wǎng)站設(shè)計什么是整體造型如何檢測網(wǎng)站是否安全
  • 做網(wǎng)站的目的什么網(wǎng)站可以發(fā)布廣告
  • 成都三合一網(wǎng)站建設(shè)蘇州網(wǎng)絡(luò)公司
  • 做網(wǎng)站用的什么服務(wù)器優(yōu)秀企業(yè)網(wǎng)站模板
  • github 可以做網(wǎng)站嗎如何創(chuàng)建網(wǎng)站教程
  • 佛山免費網(wǎng)站制作百度排名點擊器
  • 國外做機械設(shè)計任務(wù)的網(wǎng)站求職seo
  • 個人網(wǎng)站可以做資訊嗎?網(wǎng)絡(luò)推廣課程培訓(xùn)
  • 潁州網(wǎng)站建設(shè)最近新聞?wù)?/a>
  • 優(yōu)惠購網(wǎng)站怎么做的青島網(wǎng)站建設(shè)與設(shè)計制作
  • 佛山做公司網(wǎng)站地推項目平臺
  • 做動態(tài)文字的網(wǎng)站杭州網(wǎng)站定制
  • 做網(wǎng)站建設(shè)的公司有哪些方面建設(shè)網(wǎng)站公司
  • 教育網(wǎng)站如何做seo網(wǎng)絡(luò)運營團隊
  • 域名怎樣連接到網(wǎng)站外貿(mào)推廣哪個公司好
  • 網(wǎng)站地圖制作怎么做?360網(wǎng)站排名優(yōu)化
  • 電影網(wǎng)站做seo愛站關(guān)鍵詞
  • 網(wǎng)站seo設(shè)計百度手機助手app
  • 做網(wǎng)站的術(shù)語域名注冊平臺哪個好