日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁(yè) > 編程 > Regex > 正文

JScript中正則表達(dá)式函數(shù)的說(shuō)明與應(yīng)用

2020-03-16 21:24:20
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

作為模式匹配下文本替換、搜索、提取的強(qiáng)有力工具,正則表達(dá)式(Regular Expression)的應(yīng)用已經(jīng)從unix平臺(tái)逐漸滲入到網(wǎng)絡(luò)開(kāi)發(fā)中了,作為服務(wù)器端/客戶端的腳本開(kāi)發(fā)語(yǔ)言JScript,正越來(lái)越多將正則表達(dá)式應(yīng)用融入其中,以彌補(bǔ)自身在文本上處理能力的不足。在此,我們以JScript5.5版本為例,對(duì)其中的正則表達(dá)式的應(yīng)用作一個(gè)概述。

首先我們需要區(qū)分JScript中關(guān)于正則表達(dá)式的兩個(gè)對(duì)象:Regular Expression對(duì)象和RegExp對(duì)象。

前者僅包含一個(gè)特定的正則表達(dá)式實(shí)例的信息,而后者通過(guò)一個(gè)全局變量的屬性來(lái)反映最近模式匹配的特性。

前者在匹配前需要指定匹配模式,即創(chuàng)建一個(gè)Regular Expression對(duì)象的實(shí)例,而后可以把它傳遞給一個(gè)字符串方法,或是把一個(gè)字符串作為參數(shù)傳遞給這個(gè)Regular Expression實(shí)例的方法;而后者無(wú)需創(chuàng)建,它是一個(gè)固有的全局對(duì)象,每次成功匹配操作結(jié)果信息被保存在這個(gè)對(duì)象的屬性中。

一、RegExp對(duì)象的屬性:反應(yīng)最近一次成功匹配的結(jié)果信息

input :保存執(zhí)行匹配的字符串(被搜索的目標(biāo)字符串)(>=IE4)

index :保存匹配的首字符的位置*>=IE4)

lastIndex :保存匹配的字符串的下一個(gè)字符的位置(>=IE4)

lastMatch($&) :保存匹配到的字符串(>=IE5.5)

lastParen($+) :保存匹配結(jié)果最后一個(gè)子匹配的內(nèi)容(最后一個(gè)括號(hào)的匹配內(nèi)容)(>=IE5.5)

leftContext($`) :保存目標(biāo)字符串中匹配子字符串前的所有字符 (>=IE5.5)

rightContext($'):保存目標(biāo)字符串中匹配子字符串后的所有字符 (>=IE5.5)

$1 - $9 :保存匹配中最開(kāi)始的9個(gè)子匹配(即最開(kāi)始的9個(gè)括號(hào)內(nèi)的匹配結(jié)果)(>=IE4)

二、Regular Expression對(duì)象簡(jiǎn)介

1.Regular Expression對(duì)象定義

在腳本中使用正則表達(dá)式模式匹配,首先腰設(shè)定匹配模式,方法有如下兩種

(1)rgExp=/pattern*/[flags*]

(2)rgExp=new RegExp("pattern",["flags"])

注意:

a.后者模式中的轉(zhuǎn)義字符“/”需要用“//”表示,用以抵消JS中轉(zhuǎn)義字符"/"的意義,否則JS首先作為自己的轉(zhuǎn)義概念來(lái)解釋"/"后的字符。

b.flags標(biāo)識(shí)有以下幾個(gè)(至JScript 5.5版本)

g:設(shè)定當(dāng)前匹配為全局模式

i:忽略匹配中的大小寫檢測(cè)

m:多行搜索模式

2.Regular Expression對(duì)象屬性

(1)rgExp.lastIndex:匹配結(jié)果后面一個(gè)字符的位置,同RegExp.lastIndex

(2)rgExp.source:reExp對(duì)象的正則表達(dá)式匹配模式

3.Regular Expression對(duì)象方法

(1)rgExp.compile(pattern,[flags])

將rgExp轉(zhuǎn)化為內(nèi)部格式,以加快匹配的執(zhí)行,這對(duì)于大量模式一致的匹配更有效

(2)rgExp.exec(str)

按照rgExp的匹配模式對(duì)str字符串進(jìn)行匹配查找,當(dāng)rgExp對(duì)象中設(shè)定了全局搜索模式(g),則匹配查找從RegExp對(duì)象lastIndex屬性所指定的目標(biāo)字符串位置開(kāi)始;若沒(méi)有設(shè)置全局搜索,則從目標(biāo)字符串第一個(gè)字符開(kāi)始搜索。若沒(méi)有任何匹配發(fā)生,返回null。

需要注意的是該方法將匹配結(jié)果放在一個(gè)數(shù)組內(nèi)返回,該數(shù)組有三個(gè)屬性

input:包含目標(biāo)字符串,同RegExp.index

index:匹配到的子字符串在目標(biāo)字符串中的位置,同RegExp.index

lastIndex:匹配到的子字符串后面一個(gè)字符的位置,同RegExp.lastIndex

(3)rgExp.test(str)

返回布爾值來(lái)反映被查找的目標(biāo)字符串str中是否存在符合匹配的模式。該方法不改變RegExp的屬性

4.與正則表達(dá)式相關(guān)的方法

主要是指字符串對(duì)象中應(yīng)用模式匹配的方法

(1)stringObj.match(rgExp)

根據(jù)rgExp對(duì)象的正則表達(dá)式模式查找字符串stringObj中的匹配字符項(xiàng),將結(jié)果以數(shù)組形式返回。該數(shù)組有三個(gè)屬性值,與exec方法返回的數(shù)組屬性相同。若沒(méi)有任何匹配,返回null。

需要注意的是,若rgExp對(duì)象未設(shè)定全局匹配模式,則數(shù)組0下標(biāo)元素為匹配的整體內(nèi)容,1~9包含了子匹配得到的字符。若設(shè)定了全局模式,則數(shù)組包含了搜索到的所有整體匹配項(xiàng)。

(2)stringObj.replace(rgExp, replaceText)

返回一個(gè)字符串,即將stringObj中符合rgExp模式匹配的字符串替換成replaceText后返回。需要注意的是stringObj本身并不因?yàn)樘鎿Q操作而改變。若期望stringObj中所有符合正則表達(dá)式模式的字符串被替換,則在建立正則表達(dá)式模式時(shí)要設(shè)定為全局模式。

(3)stringObj.search(rgExp)

返回第一個(gè)匹配到的子字符串的位置

符號(hào)名詞解釋:

位置:表示子字符串與目標(biāo)字符串首字符的偏移

reExp:表示一個(gè)Regular Expression對(duì)象實(shí)例

stringObj:表示一個(gè)字符串對(duì)象

pattern:正則表達(dá)式模式

flags:匹配操作的模式標(biāo)識(shí)

在實(shí)際web程序開(kāi)發(fā)中我們可以有針對(duì)性的使用正則表達(dá)式來(lái)達(dá)到我們字符串處理的要求

如下附上四個(gè)使用正則表達(dá)式的JScript例程,這些例子主要用來(lái)熟悉正則表達(dá)式的使用。

1.email地址有效性檢測(cè)
 

  1. <script language='JScript'
  2. function validateEmail(emailStr) 
  3.  var re=/^[/w.-]+@([0-9a-z][/w-]+/.)+[a-z]{2,3}$/i; 
  4.  //或 var re=new RegExp("^[//w.-]+@([0-9a-z][//w-]+//.)+[a-z]{2,3}$","i"); 
  5.  if(re.test(emailStr)) 
  6.  { 
  7.   alert("有效email地址!"); 
  8.   return true
  9.  } 
  10.  else 
  11.  { 
  12.   alert("無(wú)效email地址!"); 
  13.   return false
  14.  } 
  15. </script> 

2.字符串替換操作
 

  1. <script language='JScript'
  2. var r, pattern, re; 
  3. var s = "The rain in Spain falls mainly in the plain falls."
  4. pattern = /falls/ig; 
  5. re = s.replace(re,'falling'); 
  6. alert('s = ' + s + '/n' + 're = ' + re); 
  7. </script> 

3.模式查找字符串
 

  1. <script language='JScript'
  2. var index, pattern; 
  3. var str = "four for fall fell fallen fallsing fall falls waterfalls "
  4. pattern = //bfalls/b/i; 
  5. index = str.search(pattern); 
  6. alert('The position of match is at ' + index); 
  7. </script> 

3.正則表達(dá)式屬性例程

 

  1. <script language='JScript'
  2. function matchAttrib() 
  3.    var s='';  
  4.    var re = new RegExp("d(b+)(d)","ig"); 
  5.    var str = "cdbBbdbsbdbdz"
  6.    while((arr = re.exec(str))!=null
  7.    { 
  8.     s += "=======================================<br>"
  9.     s += "$1 returns: " + RegExp.$1 + "<br>"
  10.     s += "$2 returns: " + RegExp.$2 + "<br>"
  11.     s += "$3 returns: " + RegExp.$3 + "<br>"
  12.     s += "input returns : " + RegExp.input + "<br>"
  13.     s += "index returns : " + RegExp.index + "<br>"
  14.     s += "lastIndex returns : " + RegExp.lastIndex + "<br>"
  15.     s += "lastMatch returns: " + RegExp.lastMatch + "<br>"
  16.     s += "leftContext returns: " + RegExp.leftContext + "<br>"
  17.     s += "rightContext returns: " + RegExp.rightContext + "<br>";  
  18.     s += "lastParen returns: " + RegExp.lastParen + "<br>"
  19.     s += "arr.index returns: " + arr.index + "<br>"
  20.     s += "arr.lastIndex returns: " + arr.lastIndex + "<br>"
  21.     s += "arr.input returns: " + arr.input + "<br>"
  22.     s += "re.lastIndex returns: " + re.lastIndex + "<br>"
  23.     s += "re.source returns: " + re.source + "<br>"
  24.    } 
  25.    return(s);                            //Return results. 
  26. document.write(matchAttrib()); 
  27. </script> 

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产手机视频一区二区| 亚洲中文字幕一区| 免费视频久久| 国产成人精品三级| 日韩免费视频一区二区视频在线观看| 国产欧美日韩在线播放| 日韩欧美三级在线| 久久av免费| 欧美日韩国产影片| 中文字幕在线国产| 中文字幕亚洲一区二区av在线| 亚洲福利视频专区| 国产三级视频在线| 国产欧美日韩视频| 精品日韩视频在线观看| 精品一性一色一乱农村| 欧美日韩国产在线看| 国产亚洲一级| 国产在线中文字幕| 中文字幕亚洲高清| 日韩欧美三级视频| 韩国v欧美v日本v亚洲| 在线国产1区| 不卡在线视频| 国产中文伊人| 91午夜在线| 午夜国产福利一区二区| 日韩在线中文视频| 亚洲视频在线观看日本a| 日韩精品视频免费在线观看| 欧美日韩亚洲综合| 中文字幕在线视频日韩| 日韩精品一级| 中文字幕亚洲字幕| 欧洲精品在线一区| 拍真实国产伦偷精品| 日韩免费高清一区二区| 欧美日韩久久久| 日韩视频精品在线| 国产69精品久久久久孕妇国产69久久 | 日韩欧美在线影院| 中文字幕在线视频日韩| 亚洲成在线观看| 樱花草www在线| 天天摸日日摸狠狠添| 中文精品在线观看| 日韩国产在线观看一区| 亚洲精品欧美二区三区中文字幕| 国产婷婷在线观看| www.老鸭窝.com| 国产在线观看色| 国产在线欧美日韩| 91精品xxx在线观看| 日韩精品丝袜在线| 在线免费91| 精品视频资源站| 77777_亚洲午夜久久多人| 国产亚洲一级| 亚洲第一视频在线观看| 欧美日韩在线视频免费观看 | 日韩精品在线免费看| 欧美日韩高清| 视频一区中文字幕国产| 久久精品蜜桃| 亚洲成人7777| 亚洲一区视频在线观看视频| 不卡专区在线| 一级网站免费观看| 日韩国产欧美三级| 国产在线一区二区视频| 在线视频不卡国产V| 免费看日韩精品| 在线观看精品国产| www.中文字幕在线| 国产香蕉免费精品视频| 欧美色视频一区二区三区在线观看| 欧美xxxx中国| 91精品国产自产在线观看永久∴| 欧美专区中文字幕| 91精品国产99| 国产资源中文字幕| www日韩欧美| 99久久久精品免费观看国产| 国产一二三精品| 日韩精品国产欧美| 国产精久久久久| 中文字幕在线国产| 日韩视频在线免费看| 亚洲成在线观看| 国产福利精品导航| 中文字幕日韩欧美在线| 中文字幕欧美日韩va免费视频| 精品视频国产| 91精品国产自产| 中文字幕视频在线观看| 亚洲校园欧美国产另类| 亚洲免费精品| 日韩视频国产视频| 91精品国产全国免费观看| 中文字幕在线观看视频www| 久久精品www| 日本一级一片免费视频| 欧美日本精品| 精品日本视频| 欧美一级在线观看| 国产三级精品在线观看| av中文网站| 国产日韩精品在线看| 另类专区欧美| 国产成人精品亚洲| 999精品网| 国产精品福利视频一区二区三区| 日韩欧美三级视频| 亚洲男女av一区二区| 亚洲制服丝袜一区| 伊人网站在线| 国产一区久久| 91精品国产综合久久久久久| 亚洲精品中文字幕乱码三区不卡| 欧美中文字幕视频| 天天综合日日夜夜精品| 中文在线一区二区| 国产三级在线播放| 日韩视频精品在线| 在线观看国产福利视频| 国产拍揄自揄精品视频麻豆| 91精品国产高清| 日韩亚洲欧美中文在线| 欧美日韩在线播放视频| 91精品国产全国免费观看| 91久久久久| 欧美一级在线观看| 欧美一级久久久久久久久大| 中文字幕欧美日韩| 国产字幕中文| 精品日韩99亚洲| 在线综合 亚洲 欧美中文字幕| 欧美国产亚洲一区| 天堂精品高清1区2区3区| 国产一区不卡精品| 国产真实乱子伦精品视频| 日韩精品一页| 国产三级做爰在线观看| 精品全国在线一区二区| 亚洲高清精品视频| 欧美日韩亚洲系列| 91精品国产91| 国产一区精品在线| 日韩欧美国产高清91| 日韩一级中文字幕| 成片免费观看| 中文欧美日韩| 99久久www免费| 欧美日韩色综合| 欧美日韩精品在线观看| 国产高清精品在线观看| 日韩三级一区二区| 欧美成人一区二区| www.久久草| 国产乱国产乱老熟300| 欧美日本精品在线| 中文字幕 亚洲一区| www.xxxx精品| 在线视频三区| 天天综合色天天| 国产一级免费看| 日韩欧美专区在线| 精品日韩在线播放| 精品日韩一区二区三区免费视频| 天天综合日日夜夜精品| 精品日韩在线播放| 亚洲成年人在线播放| 日韩中文字幕国产| 亚洲影视资源网| 天天综合天天| 精品亚洲成a人片在线观看| 国产一区精品| 欧美高清一级片在线| 最近中文av字幕在线中文| 亚洲人成欧美中文字幕| 日韩不卡在线播放| 亚洲黄色片在线观看| 九七久久人人| 国产小视频在线| 欧美三级在线看| 亚洲成年人影院在线| 欧美久久在线| 亚洲美女视频一区| 久久婷婷亚洲| 国产又粗又猛又爽又黄91精品| 一区二区三区免费看视频 | www.老鸭窝.com| 国产日韩精品电影| 日韩视频在线免费播放| 国产成人一区二区精品非洲| 免费网站看黄yyy222| 日韩欧美一级在线| 91精品国产亚洲| 一区二区欧美国产| 欧美日韩精品在线视频| 99热最新网址| 亚欧成人精品| 精品视频久久| 在线三级av| 国产偷国产偷亚洲清高网站| 日韩中文字幕精品视频| 亚洲中午字幕| 日韩一级中文字幕| 日韩欧美亚洲国产一区| 国产超级va在线视频| 中文字幕在线日韩| a视频在线播放| 日韩欧美不卡在线| 日韩美女视频一区二区在线观看| 精品人妻一区二区三区视频| 中文天堂在线一区| 视频一区二区中文字幕| aaa免费看大片| 91精品国产91久久久久青草| 国产亚洲福利| 国产一级免费| 区日韩二区欧美三区| 欧美三级日韩在线| 久久99精品久久久| 日韩欧美中文字幕精品| 91吃瓜在线观看| 国产小视频在线| 日本不卡视频一区| 午夜私人影院在线观看| 国产资源中文字幕| 欧美 日韩 中文字幕| 国产日韩精品在线| 中文字幕第一页在线播放| 日韩精品大片| 亚洲综合视频一区| 日韩三级视频在线播放| 国产在线导航| 三级精品视频| 中文字幕一区不卡| 中文网丁香综合网| 中文字幕在线观看视频www| 欧美日韩在线精品一区二区三区激情综| 欧美高清一级片在线| 91精品国产免费| 久久久久久久久综合| 国产最新在线| 美国av一区二区| 精品色蜜蜜精品视频在线观看| 在线精品观看| 日韩欧美高清在线| 在线视频不卡国产V| 国产小视频免费在线观看| 精品国产99久久久久久| 国产丝袜一区二区| 国产欧美日韩亚洲| 中文字幕在线官网| 91精品国产免费久久综合| 国产日韩在线亚洲字幕中文| 亚洲校园欧美国产另类| 一区视频在线播放| 亚洲欧美小说国产图片| 婷婷中文字幕一区三区| 精品国自产在线观看| 91精品在线观看国产| 中文字幕在线亚洲| 日韩综合精品| 国产欧美日韩亚洲| 中文字幕精品视频| 欧美国产一级| 久久韩国免费视频| 日韩精品三级| 日韩欧美亚洲国产| 中文字幕欧美日韩在线| 51精品免费网站| 日韩欧美国产不卡| 九七久久人人| 精品亚洲综合| 国产日韩精品在线看| 欧美日韩亚洲视频| 日韩国产在线观看一区| 一级日本免费的| 在线免费播放av| 99精品视频99| 久久久久久91| 欧美日韩国产999| 亚洲成在线观看| 中文字幕在线精品| 91久久视频| 中文精品视频| 国产欧美三级| 日韩欧美中文第一页| 日韩精品在线观看视频| 日韩精品视频网| 久久久久黄色| 亚洲一区在线观看免费| 欧美性生交大片免费| 日韩精品乱码av一区二区| 天堂√8在线中文| 高清一区二区| 一区二区三区精品在线| 国产欧美日产一区| 日韩不卡在线观看| 欧美日韩精品三区| 欧美日韩亚洲第一| 日韩国产亚洲欧美| 亚洲羞羞网站| 日韩视频在线一区二区| 欧美日韩国产专区| 91精品国产91久久久久久久久| 91精品久久久久| 国产黄在线播放| 精品一区二区三区中文字幕| 91精品国产综合久久蜜臀| 日韩精品 欧美| av影视在线看| 国产成人精品三级| 日韩国产亚洲欧美| 精品日韩一区二区三区免费视频| 精品福利二区三区| 91精品国产自产在线| 国产网站av| 中文字幕国产亚洲| 久草亚洲一区| 中文字幕视频在线免费欧美日韩综合在线看 | 欧美日韩精品不卡| 91xxx在线观看| 欧美三级日韩三级| 日韩欧美一级二级三级久久久| 亚洲一区在线观看网站| 日本熟女一区二区| 久久精品一二三| 亚洲视频 中文字幕| 国产婷婷色一区二区三区在线| 国产福利在线播放| 日韩欧美一级在线| 日韩欧美999| 在线视频你懂得一区| 日韩国产成人| 欧美一级二级三级区| 欧美不卡视频一区发布| 日韩欧美中文第一页| 欧美国产中文| 国产在线中文字幕| 中文字幕亚洲高清| 91精品久久久久久久久久| 国产婷婷色一区二区三区在线| 欧美日韩高清| 久草亚洲一区| 日韩 国产 一区| 国产欧美日韩最新| 日韩免费不卡avV| 久久久久久91| 国产欧美日韩视频| 国产 中文 字幕 日韩 在线| 日韩视频精品| 国产三级第一页| www在线播放| 天堂√8在线中文| 欧美日韩国产亚洲一区| 欧美日韩一区二区在线视频| 亚洲九九精品| 国产成人精品免费在线| 精品1区2区3区| 国产一区久久久| 精品视频资源站| 黄色片网站在线| 日韩一级精品| 欧美日韩国产影片| 日韩一级在线视频| 日韩免费看网站| 日韩一级在线免费观看| 欧美日韩在线观看成人| 一区免费视频| 狠狠色噜噜狠狠狠狠97| 国产一二三视频| 国产一区 二区 三区一级| 欧美中文字幕精品| 不卡专区在线| 高清国产一区| 日韩视频一区在线观看| 国产成人精品日本亚洲专区61 | 中文字幕 欧美日韩| 91日韩欧美| 国产在线精品日韩| 亚洲福利在线观看| 国产最新在线| 欧美日韩国产在线播放| 在线国产一级| 日韩亚洲欧美中文在线| 九一精品国产| 日韩中文字幕亚洲| 老司机久久99久久精品播放免费| 国产欧美日韩在线看| 日韩在线一区二区视频| 一本久久a久久精品亚洲| 日韩综合精品| 欧美日韩中文字幕视频| 欧美日韩性视频| 在线欧美日韩精品| 日韩欧美专区在线|