亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Regex > 正文

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

2020-03-16 21:24:20
字體:
供稿:網(wǎng)友

作為模式匹配下文本替換、搜索、提取的強(qiáng)有力工具,正則表達(dá)式(Regular Expression)的應(yīng)用已經(jīng)從unix平臺(tái)逐漸滲入到網(wǎng)絡(luò)開發(fā)中了,作為服務(wù)器端/客戶端的腳本開發(fā)語言JScript,正越來越多將正則表達(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í)例的信息,而后者通過一個(gè)全局變量的屬性來反映最近模式匹配的特性。

前者在匹配前需要指定匹配模式,即創(chuàng)建一個(gè)Regular Expression對(duì)象的實(shí)例,而后可以把它傳遞給一個(gè)字符串方法,或是把一個(gè)字符串作為參數(shù)傳遞給這個(gè)Regular Expression實(shí)例的方法;而后者無需創(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 :保存匹配中最開始的9個(gè)子匹配(即最開始的9個(gè)括號(hào)內(nèi)的匹配結(jié)果)(>=IE4)

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

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)義概念來解釋"/"后的字符。

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)字符串位置開始;若沒有設(shè)置全局搜索,則從目標(biāo)字符串第一個(gè)字符開始搜索。若沒有任何匹配發(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)

返回布爾值來反映被查找的目標(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ù)組屬性相同。若沒有任何匹配,返回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程序開發(fā)中我們可以有針對(duì)性的使用正則表達(dá)式來達(dá)到我們字符串處理的要求

如下附上四個(gè)使用正則表達(dá)式的JScript例程,這些例子主要用來熟悉正則表達(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("無效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ā)表
亚洲第一论坛sis| 欧美xo影院| 日韩成人综合| 国产精品福利电影一区二区三区四区| 国产精品毛片无遮挡高清| 亚洲高清一二三区| 国产精品剧情一区二区在线观看| 国产欧美视频一区二区| jizzjizz国产| 成人免费毛片日本片视频| 精品久久久一区二区| 中文字幕av在线播放| av日韩在线免费观看| 超碰成人免费在线| 黄动漫在线免费观看| 亚洲视频电影| 久久99精品久久久久久国产越南| 日韩精品视频网| 一区二区三区激情视频| 亚洲一区二区免费视频| 色噜噜狠狠成人中文综合| 亚洲av片不卡无码久久| 色欧美片视频在线观看在线视频| 成人在线观看免费高清| 欧美色图首页| 天天操天天摸天天干| 亚洲国产免费看| 91免费精品国自产拍在线不卡| 7777久久香蕉成人影院| 91视频精品| 国产在线不卡一区二区三区| www.youjizz.com在线| 精品国产成人av在线免| 美日韩一级片在线观看| 九九九九热精品免费视频| 久久久久国产一区| 999在线观看免费大全电视剧| 北条麻妃一区二区三区在线观看| 高清一区二区中文字幕| 国内综合精品午夜久久资源| 精品91久久久| 一二三中文字幕在线| 青椒成人免费视频| 日韩黄色一级视频| 国产乱人伦偷精品视频不卡| 在线成人综合色一区| 第一sis亚洲原创| 少妇一级淫片免费看| 中文字幕一区二区三区在线乱码| 欧美丰满熟妇bbbbbb| 国产精品一品视频| 嫩草视频免费在线观看| 国产精品一区二区久久久| 91福利免费视频| 日韩中文字幕免费观看| 公交车上扒开嫩j挺进去| 亚洲精品福利视频| 亚洲午夜av在线| 日韩和欧美的一区二区| 欧美性生交xxxxx久久久| 麻豆国产精品视频| 成人3d漫画免费无遮挡软件| 日韩美女精品在线| 日韩激情一区二区| 亚洲羞羞网站| 91精品中文在线| 相泽南亚洲一区二区在线播放| 午夜精品免费在线| 国产精品亚发布| 福利91精品一区二区三区| 欧美日韩在线精品| 成人在线视频一区二区| 国产日韩欧美91| 久久97精品久久久久久久不卡| 少妇高潮av久久久久久| 男女性色大片免费观看一区二区| 一区二区亚洲视频| 五月激情在线| 成年人网站免费观看| 亚洲精品视频大全| heyzo高清中文字幕在线| 亚洲国产欧美日韩| 日韩一区二区免费电影| 精品视频在线观看网站| 99re热视频精品| 亚洲视频在线免费观看| 2021年精品国产福利在线| 欧美丝袜自拍制服另类| 国产精品一区而去| 久久国产精品国语对白| 黄色一级片免费在线观看| 亚洲色偷偷综合亚洲av伊人| 亚洲精品中文字幕乱码三区不卡| 在线免费观看高清视频| 亚洲自拍一区在线观看| 伊人资源视频在线| 日韩欧美视频在线播放| 亚洲高清毛片| 狠狠躁夜夜躁人人爽视频| 国产黄在线播放| 美女胸又www又黄的网站| 国产免费av网站| 超碰成人免费| 国产视频一区二区三区在线播放| 免费成年人高清视频| 成人免费在线视频观看| 性色av一区二区三区免费| 免费亚洲一区| 久久福利视频导航| 亚洲日本久久久| 亚洲毛片在线免费| 日韩视频网站在线观看| 国产精品久久久久久久久妇女| 天天爽夜夜爽夜夜爽精品| 成人a级免费视频| 人妻精品无码一区二区| 经典三级久久| 亚洲第一黄色片| 欧美人与z0zoxxxx特| 美日韩精品免费观看视频| 国产奶头好大揉着好爽视频| 韩国自拍一区| 操日韩av在线电影| 亚洲都市激情| www.51av欧美视频| 国产精品久久久久久久久久精爆| 91sese| 国产自产2019最新不卡| 亚洲精华国产欧美| 青青在线免费观看视频| 免费网站www在线观看| 午夜国产福利在线观看| jizzjizzji欧美| 国产精品第5页| 亚洲天堂一级片| 在线免费一区二区| 午夜在线免费观看视频| 亚洲精品在线免费看| 免费日韩视频在线观看| 成人自拍视频在线观看| 久久精品网址| 欧美成人精品一区二区免费看片| 麻豆国产精品一区| 亚洲欧美另类自拍| 午夜视频福利在线| 欧美日韩综合在线免费观看| 国产a级网站| 女生裸体视频网站免费观看| 香蕉久久夜色精品国产更新时间| 欧美精品激情在线观看| 欧美日韩国产乱码电影| 一区二区欧美亚洲| av在线第一页| 区日韩二区欧美三区| 大胆人体一区二区| 清纯唯美亚洲综合一区| 日本一区二区三区免费视频| 亚洲成av人片乱码色午夜| 欧美日韩国产高清视频| 欧美在线观看一二区| 久久精品人人做人人爽人人| a视频免费观看| 久久精品av麻豆的观看方式| 五月天综合婷婷| 欧美另类第一页| 一本色道**综合亚洲精品蜜桃冫| 91久久精品一区二区三区| 欧美一级日韩一级| 色婷婷av在线| 久久免费资源| 欧亚一区二区三区| 大陆一级毛片| 日韩av综合| 日日干夜夜操| 精品国产区一区二区三区在线观看| 国产美女精品在线| 91国内精品| 日韩精品在线第一页| 成人1区2区3区| 欧美色综合影院| 国内精品久久久久国产盗摄免费观看完整版| 五月天激情图片| 精品国语对白精品自拍视| 中文字幕 亚洲一区| 欧美视频一区二区在线| 日韩欧美成人午夜| 欧美与黑人午夜性猛交久久久| 国产裸体美女永久免费无遮挡| 激情综合在线观看| 少妇特黄一区二区三区| 中国china体内裑精亚洲片| 在线观看免费黄色网址| 麻豆疯狂做受xxxx高潮视频| 黄色av网站免费| av之家在线观看| 亚洲欧美激情视频在线观看一区二区三区| av成人老司机| 国产亚洲精品拍拍拍拍拍| 在线观看日韩www视频免费| www深夜成人a√在线| 台湾佬中文娱乐久久久| 国产精品乱子乱xxxx| 亚洲国产精品成人天堂| 3d动漫精品啪啪一区二区竹菊| 成人免费网站观看| 91精品国产乱码久久久久久蜜臀| 波多野结衣中文字幕在线播放| 日韩欧美福利视频| 久久精品免视看国产成人| 国产精品一区二区欧美| 成人免费在线电影| 久久久www免费人成黑人精品| 成人精品久久| 有码在线播放| 国产精品亚洲人在线观看| 免费看av成人| 亚洲人成免费电影| 色女人综合av| 最近2018中文字幕免费在线视频| av亚洲在线观看| 秋霞午夜理伦电影在线观看| 直接在线观看的三级网址| 国产欧美日韩卡一| 成人av资源| 中文在线天堂库| 亚洲va韩国va欧美va| 国产日韩精品在线| 欧美大片免费观看| 嫩模一区二区三区| 国产欧美一区二区三区米奇| 中文字幕二三区不卡| 国产高清久久久久| www.久久久久久久| 秋霞一区二区三区| 女人18毛片水真多免费播放| 雨宫琴音一区二区三区| 亚洲国产专区校园欧美| 91丝袜在线| 免费国产黄色片| 羞羞免费视频网站| 日韩欧美中字| 精品176二区| 中文字幕亚洲在| 五月天av网站| 成人ww免费完整版在线观看| 亚洲激情校园春色| eeuss鲁片一区二区三区| 538prom精品视频线放| 国产午夜精品视频一区二区三区| 中文字幕亚洲精品| 大胆av不用播放器在线播放| 福利一区二区免费视频| 在线观看三级视频欧美| 久久国产精品99国产| 国产美女永久免费无遮挡| 国产精品99久久久久久宅男| 亚洲乱码日产精品bd| 青青在线视频免费观看| freehdxxxx护士| 中文字幕第一区综合| 91麻豆产精品久久久久久夏晴子| 成人久久18免费网站图片| 欧美性生交大片免网| 亚洲在线免费播放| 美女黄色免费看| 亚洲午夜电影在线观看| 午夜先锋成人动漫在线| 日韩欧美精品在线观看视频| 制服丝袜中文字幕一区| 在线中文字幕观看| 欧美一区二区三区在线视频| 免费成人小视频| 四虎成人精品在永久在线观看| 中文字幕日韩av综合精品| 五十路亲子中出在线观看| 欧美成人激情视频免费观看| 成人av观看| 99re热精品视频| 久久9热精品视频| 亚洲国产www| 精品久久久影院| 国产成人综合网站| 无码国产精品96久久久久| 亚洲丝袜av一区| 日本三级韩国三级久久| 人人妻人人添人人爽欧美一区| 成年人网站免费看| 色一区av在线| 成人免费视频77777| 久久久xxx| 国产黄a三级三级看三级| 亚洲国产精品一区二区第一页| 亚洲全黄一级网站| 理论片在线不卡免费观看| 国产又黄又大又粗的视频| 精品爽片免费看久久| 一区二区精品在线| 成年人福利网站| 伊人久久久久久久久久久久| 一本到一区二区三区| 成人sese在线| 国产黄a三级三级看三级| 久久久av亚洲男天堂| 视频小说一区二区| 欧美最顶级a∨艳星| 国产精品毛片a∨一区二区三区|国| 欧美成人bangbros| 日本视频在线观看免费| 色97色成人| 色偷偷男人天堂| 亚洲第一网站男人都懂| 久久天天躁夜夜躁狠狠躁2022| 亚洲一级二级三级在线免费观看| 亚洲精品成人悠悠色影视| 欧美国产高潮xxxx1819| 国产欧美日韩三区| 国产精品 日产精品 欧美精品| 极品美女销魂一区二区三区| 久久久精品视频在线观看| 日韩美女视频19| 户外露出精品视频国产| 99久久免费视频.com| 日韩欧美一区在线观看| 国产极品嫩模在线观看91精品| 91精品国产91久久久久久三级| 国产妇女馒头高清泬20p多| 福利网站av| 激情五月深爱五月|