激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - 正則表達(dá)式 - 重溫JavaScript中的正則表達(dá)式 js學(xué)習(xí)筆記

重溫JavaScript中的正則表達(dá)式 js學(xué)習(xí)筆記

2020-08-03 17:52正則教程網(wǎng) 正則表達(dá)式

創(chuàng)建正則表達(dá)式和創(chuàng)建字符串類似 , 創(chuàng)建正則表達(dá)式提供了兩種方法 , 一種是采用 new運(yùn)算符,另一個(gè)是采用字面量方式

一、創(chuàng)建正則表達(dá)式

  創(chuàng)建正則表達(dá)式和創(chuàng)建字符串類似 , 創(chuàng)建正則表達(dá)式提供了兩種方法 , 一種是采用 new運(yùn)算符,另一個(gè)是采用字面量方式。

復(fù)制代碼 代碼如下:


  var dog = new RegExp('dog'); // 第一個(gè)參數(shù)字符串
  var dog = new RegExp('dog', 'ig'); // 第二個(gè)參數(shù)可選模式修飾符

var dog = /dog/;
  var dog = /dog/ig; //字面量方式。

重溫JavaScript中的正則表達(dá)式 js學(xué)習(xí)筆記

RegExp 對(duì)象包含兩個(gè)方法 : test() 和 exec() , 功能基本相似 , 用于測(cè)試字符串匹配 。

   test()方法在字符串中查找是否存在指定的正則表達(dá)式并返回布爾值 , 如果存在則返回 true , 不存在則返回 false 。

   exec() 方法也用于在字符串中查找指定正則表達(dá)式,如果 exec() 方法執(zhí)行成功,則返回包含該查找字符串的相關(guān)信息數(shù)組。如果執(zhí)行失敗,則返回 null 。

  雖然創(chuàng)建正則表達(dá)式對(duì)象比較簡單,但真正復(fù)雜的卻是用正則語法描述的模式信息。接下來,我們分幾個(gè)小節(jié)分別探討一些模式:

二、字符串的正則表達(dá)式方法

重溫JavaScript中的正則表達(dá)式 js學(xué)習(xí)筆記

例如:

復(fù)制代碼 代碼如下:


var myPattern = /dog/ig;var theStr = "this is a dog,that is a dog!"console.log(theStr.match(myPattern)); //["dog", "dog"]
var myPattern = /dog/i;var theStr = "this is a dog,that is a dog!"console.log(theStr.search(myPattern)) //10
var myPattern = /dog/i; //注意沒有設(shè)置全局,如果設(shè)置全局,結(jié)果為:this is a Cat,that is a Cat!var theStr = "this is a dog,that is a dog!"console.log(theStr.replace(myPattern,"Cat")); //this is a Cat,that is a dog!
var myPattern = /\s/ig;var theStr = "this is a dog,that is a dog!"console.log(theStr.split(myPattern)); //["this", "is", "a", "dog,that", "is", "a", "dog!"],這個(gè)加不加全局g沒有影響!


二、直接量字符
在正則表達(dá)式中,所有字母字符和數(shù)字都是按照直接量與自身匹配的。同時(shí),正則表達(dá)式還通過反斜杠“\”加字母來支持某些非字母的字符。見下面的匹配列表:
字符        匹配
字母和數(shù)字     自身 例如: /a/ 匹配 字母 a
\o         NUL字符
\t         制表符
\n         換行符
\v         垂直制表符
\f         換頁符
\r          回車

三、字符類

將單獨(dú)的直接字符放進(jìn)[]內(nèi),就組成了字符類。一個(gè)字符類和它所包含的任何字符都匹配。

  例如:/[abc]/ 與abc三個(gè)字母的任意一個(gè)匹配。
同時(shí),還可以定義否定字符類。利用^字符。例如:/[^abc]/匹配a b c以外的所有字符。
另,可以用連字符號(hào)確定一個(gè)字符的范圍。例如:/[a-z]/匹配a到z。要匹配所有拉丁字母集,可以使用/[a-zA-Z0-9]/
字符      匹配

.        除換行符和其他Unicode行終止符之外的任意字符
\w       任何ASCII單字字符,等價(jià)于[a-zA-Z0-9_]
\W       任何非ASCII單字字符,等價(jià)于[^a-zA-Z0-9_]
\s        任何Unicode空白符
\S        任何非Unicode空白符
\d        任何ASCII數(shù)字,等價(jià)于[0-9]
\D        任何非ASCII數(shù)字,等價(jià)于[^0-9]
[\b]       退格直接量
  注意,方括號(hào)[]內(nèi)也可以使用上面的轉(zhuǎn)義序列。例如/[\s\d]/ 匹配任意的空白符或數(shù)字。

四、重復(fù)

  根據(jù)第二節(jié)涉及到的知識(shí),我們可以把兩位數(shù)表述成/\d\d/,但,如果重復(fù)次數(shù)過多,肯定就不能這樣寫了。
字符      匹配
{n,m}     匹配前一項(xiàng)至少n次,但不超過m次
{n,}      匹配前一項(xiàng)大于等于n次

{n}       恰好n次
?        0次或1次,
+       1次或者多次,等價(jià)于{1,}
*        0次或多次
  例如:/\d{2,4}/ 2個(gè)、3個(gè)或4個(gè)數(shù)字。   /\w{3}\d?/ 匹配3個(gè)字符,并有一個(gè)可選的數(shù)字。
注意:/a*/實(shí)際上與bbbb是匹配的,因?yàn)?個(gè)或多個(gè)a與bbbb匹配。

五、錨字符


重溫JavaScript中的正則表達(dá)式 js學(xué)習(xí)筆記

六、選擇、分組和引用

  1、字符“|”用于分隔選擇的字符。例如:/ab|cd|ef/匹配字符串a(chǎn)b或cd或ef。 /\d{3}|[a-z]{4}/匹配3個(gè)數(shù)字或4個(gè)小寫字母

  2、"()"作用是把單獨(dú)的項(xiàng)目組合成子表達(dá)式。例如:/java(script)?/ 匹配java,其后可以有script,也可以沒有。

注意,在分組中,$1、$2、$3分別表示第幾個(gè)分組中的內(nèi)容。

  例如:

var myPattern = /(dog).*(cat)/;var theStr = "this is a dog,that is a cat!"myPattern.exec(theStr);console.log(RegExp.$2 + " " + RegExp.$1); //cat dog console.log(RegExp.lastMatch); //最后一次匹配的項(xiàng):dog,that is a cat

七、貪婪與惰性

 

重溫JavaScript中的正則表達(dá)式 js學(xué)習(xí)筆記

例如:

復(fù)制代碼 代碼如下:


var myPattern = /[a-z]+/;var theStr = "this is a dog,that is a cat!"console.log(theStr.replace(myPattern, "a")); //a is a dog,that is a cat! 貪婪的,把this都匹配了!
var myPattern = /[a-z]+?/;var theStr = "this is a dog,that is a cat!"console.log(theStr.replace(myPattern, "a")); //ahis is a dog,that is a cat! 非貪婪的,只把this中的t匹配了!


最后,RegExp實(shí)例繼承的toLocaleString()和toString()方法都會(huì)返回正則表達(dá)式的字面量,即/abc/

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 日本68xxxx| 国产一级毛片国语版 | 精品久久www | 国产人成精品一区二区三 | 国产亚洲精品久久久久久大师 | 日韩在线欧美在线 | 国产网站黄 | 欧美一级理论 | 国产午夜免费福利 | 免费毛片在线视频 | 久久网综合 | 大学生一级毛片在线视频 | 欧美日韩中文字幕在线视频 | 黄色毛片一级视频 | 中文字幕网在线 | 国产成人综合在线视频 | 亚洲无av| 国产精品久久久久久久久久久久久久久 | 加勒比色综合 | 日韩午夜片 | 久久久精品精品 | 亚洲精品v天堂中文字幕 | 久久久久北条麻妃免费看 | 国产精品视频久久久 | 免费观看国产精品视频 | 一级裸体视频 | 精品国产一区在线 | 精品国产一区二区三区久久久蜜月 | 久久精品超碰 | 国产成人av在线播放 | 欧美成年私人网站 | 久久人人做 | 亚洲午夜电影 | 久久激情小视频 | 成人在线视频在线观看 | 九九热精品在线视频 | 中文字幕伦乱 | 日本爽快片100色毛片视频 | 国产毛片在线看 | 国产一区二区三区视频在线 | h视频免费在线 |