成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

JavaScript面向?qū)ο缶幊獭猂egExp類型

Magicer / 1242人閱讀

摘要:由于某些字符類非常常用,的正則表達(dá)式中,使用特殊轉(zhuǎn)義字符表示他們。多行搜索代碼示例對(duì)象創(chuàng)建對(duì)象可以通過(guò)引用類型創(chuàng)建正則表達(dá)式對(duì)象參數(shù)參數(shù)被稱為模式,可以使任何簡(jiǎn)單或復(fù)雜的正則表達(dá)式,包含字符類限定符分組向前查找以及反向引用等。

概述 正則表達(dá)式是什么

正則表達(dá)式(RegularExpression):由一些普通字符和特殊字符組成的,用以描述一種特定的字符規(guī)則的表達(dá)式。
正則表達(dá)式常用在一段文本中搜索、匹配或替換特定形式的文本。比如:詞語(yǔ)出現(xiàn)頻率統(tǒng)計(jì)、驗(yàn)證字符串是否符合郵箱格式、屏蔽一篇帖子中的限制性詞語(yǔ)等。

創(chuàng)建正則表達(dá)式
/*
    1.字面量/直接量方式
      var 變量名 = /pattern/attributes
      * pattern - 稱為模式,用于定義正則表達(dá)式的內(nèi)容
      * attributes - 稱為修飾符,用于定義正則表達(dá)式的行為
 */
var reg = /123456789/i;
/*
    2.構(gòu)造函數(shù)方式
      var 變量名 = new RegExp(pattern [, attributes])
      * pattern - 稱為模式,用于定義正則表達(dá)式的內(nèi)容
      * attributes - 稱為修飾符,用于定義正則表達(dá)式的行為
 */
var reg = new RegExp("123456789", "i");

pattern參數(shù):被稱為模式,可以使任何簡(jiǎn)單或復(fù)雜的正則表達(dá)式,包含字符類、限定符、分組、向前查找以及反向引用等。
attributes參數(shù):被稱為修飾符,用于表明正則表達(dá)式的行為。

符號(hào) 直接量字符

正則表達(dá)式中的所有字母和數(shù)字都是按照字面含義進(jìn)行匹配的。JavaScript正則表達(dá)式語(yǔ)法也支持非字母的字符匹配,這些字符需要通過(guò)反斜線作為前綴進(jìn)行轉(zhuǎn)義。

字符類

將直接量字符多帶帶放進(jìn)方括號(hào)內(nèi)就組成了字符類。一個(gè)字符可以匹配它所包含的任意字符。由于某些字符類非常常用,JavaScript的正則表達(dá)式中,使用特殊轉(zhuǎn)義字符表示他們。

var str = "king";

// 正則表達(dá)式的內(nèi)容中定義規(guī)則 -> 驗(yàn)證的內(nèi)容是否包含規(guī)則
// var reg = /123456789/;

// 正則表達(dá)式的內(nèi)容中定義規(guī)則 -> 驗(yàn)證的內(nèi)容匹配任何字符即可
var reg = /[0123456789]/;
var reg = /[d]/;
var reg = /[0-9]/;

var reg = /[a-zA-Z]/;

var result = reg.test(str);
console.log(result);
重復(fù)

在JavaScript中的正則表達(dá)式用來(lái)描述任意多位的數(shù)字,或者描述由三個(gè)字母和一個(gè)數(shù)字構(gòu)成的字符串時(shí),可以使用字符重復(fù)耳釘標(biāo)記。

var str = "wolong124xue3yuan";
/*
    {n, m} - 表示字符類中任意字符出現(xiàn)的次數(shù)
    * n - 表示至少出現(xiàn)n次(包含n次)
    * m - 表示至多出現(xiàn)m次(包含m次)
    * 注意 - 出現(xiàn)的次數(shù)必須是連續(xù)的
 */
var reg = /[0-9]{3,5}/;
var result = reg.test(str);
console.log(result);
匹配指定的位置

正則表達(dá)式中的多個(gè)元素才能夠匹配字符串的一個(gè)字符,這些元素稱之為正則表達(dá)式的錨。因?yàn)樗鼈儗⒛J蕉ㄎ辉谒阉髯址奶囟ㄎ恢蒙稀?/p>

常用兩中‘^’和‘$’一個(gè)表示從匹配輸入的開始,另一個(gè)表示 從匹配輸入的結(jié)束。

var str = "12a45";

// 表示以什么開始的
// var reg = /^[0-9]{3,5}/;
// 表示以什么結(jié)束的
// var reg = /[0-9]{3,5}$/;
// 表示匹配內(nèi)容的長(zhǎng)度只能為至少n次,至多m次,而且內(nèi)容必須與字符類匹配
var reg = /^[0-9]{3,5}$/;

var result = reg.test(str);
console.log(result);

// 長(zhǎng)度為6-16位的數(shù)字或字母
/^[0-9a-zA-Z]{6,16}$/
修飾符

正則表達(dá)式的修飾符,用于說(shuō)明高級(jí)匹配模式的規(guī)則。修飾符是放在“/”符號(hào)后面的,JavaScript支持三個(gè)修飾符
1.i:不區(qū)分大小寫搜索。
2.g:全局搜索。
3.m:多行搜索.
代碼示例:

var str = "wolongxueyuan";

var reg = /^[A-Z]{8,16}$/i;
var result = reg.test(str);
console.log(result);
對(duì)象 創(chuàng)建RegExp對(duì)象

JavaScript可以通過(guò)引用類型RegExp創(chuàng)建正則表達(dá)式對(duì)象
參數(shù):
1.pattern參數(shù):被稱為模式,可以使任何簡(jiǎn)單或復(fù)雜的正則表達(dá)式,包含字符類、限定符、分組、向前查找以及反向引用等。
2.attributes參數(shù):被稱為修飾符,用于表明正則表達(dá)式的行為。
代碼示例

var arr = new RegExp(pattern,attributes);
RegExp對(duì)象的屬性

RegExp對(duì)象的方法

RegExp獨(dú)享的方法有三種:
1.compile():編譯/重新編寫正則表達(dá)式,將pattern轉(zhuǎn)換為每部格式,加快執(zhí)行速度。
2.exec():檢索字符串中指定的值。返回找到的值,并確定其位置;影響lastlndex屬性的值。
3.test():檢索字符串中指定的值。返回true或false;影響lastlndex屬性的值。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/108425.html

相關(guān)文章

  • 前端_JavaScript_面向對(duì)象編程

    摘要:面向?qū)ο缶幊虒?duì)象的原生方法分成兩類自身的方法靜態(tài)方法和的實(shí)例方法。的靜態(tài)方法方法與,參數(shù)是對(duì)象,返回一個(gè)數(shù)組,數(shù)組的值是改對(duì)象自身的所有屬性名區(qū)別在于返回可枚舉的屬性,返回不可枚舉的屬性值。 面向?qū)ο缶幊?Objects對(duì)象的原生方法分成兩類:Object自身的方法(靜態(tài)方法)和Object的實(shí)例方法。注意Object是JavaScript的原生對(duì)象,所有的其他對(duì)象都是繼承自O(shè)bjec...

    Blackjun 評(píng)論0 收藏0
  • JavaScript權(quán)威指南》隨筆(一)

    摘要:每個(gè)構(gòu)造函數(shù)定義了一類對(duì)象,表示由構(gòu)造函數(shù)初始化對(duì)象的集合。嚴(yán)格模式下,明確禁止八進(jìn)制數(shù)。日期和時(shí)間構(gòu)造函數(shù)用來(lái)創(chuàng)建表示日期和時(shí)間的對(duì)象,包含方法。模式匹配函數(shù)是一個(gè)構(gòu)造函數(shù),創(chuàng)建正則表達(dá)式。布爾值表示兩種狀態(tài),使用保留字和。 《Javascript權(quán)威指南》就是前端工程師口中常說(shuō)的犀牛書,得名是因?yàn)橹形姆g出版的書籍封面是一只犀牛,是學(xué)習(xí)JavaScript的必讀書籍。 JavaSc...

    SwordFly 評(píng)論0 收藏0
  • JavaScript對(duì)象的深淺復(fù)制

    摘要:本文是我在復(fù)制對(duì)象方面的一些心得總結(jié),由淺復(fù)制到深復(fù)制,由只復(fù)制簡(jiǎn)單屬性到復(fù)制,等復(fù)雜屬性,層層遞進(jìn)。如有陳述不當(dāng)之處,煩請(qǐng)指出,不勝感激。下面是一個(gè)簡(jiǎn)單的淺復(fù)制實(shí)現(xiàn)。 前言 從層次上來(lái)看,對(duì)象的復(fù)制可以簡(jiǎn)單地分為淺復(fù)制和深復(fù)制,顧名思義,淺復(fù)制是指只復(fù)制一層對(duì)象的屬性,不會(huì)復(fù)制對(duì)象中的對(duì)象的屬性,對(duì)象的深復(fù)制會(huì)復(fù)制對(duì)象中層層嵌套的對(duì)象的屬性。在復(fù)制對(duì)象時(shí),除了要復(fù)制對(duì)象的屬性外,還要...

    B0B0 評(píng)論0 收藏0
  • 理解javascript核心知識(shí)點(diǎn)

    摘要:作用域鏈的作用就是做標(biāo)示符解析。事件循環(huán)還有個(gè)明顯的特點(diǎn)單線程。早期都是用作開發(fā),單線程可以比較好當(dāng)規(guī)避同步問(wèn)題,降低了開發(fā)門檻。單線程需要解決的是效率問(wèn)題,里的解決思想是異步非阻塞。 0、前言 本人在大學(xué)時(shí)非常癡迷java,認(rèn)為java就是世界上最好的語(yǔ)言,偶爾在項(xiàng)目中會(huì)用到一些javascript,但基本沒(méi)放在眼里。較全面的接觸javascript是在實(shí)習(xí)的時(shí)候,通過(guò)這次的了解發(fā)現(xiàn)...

    laznrbfe 評(píng)論0 收藏0
  • JavaScript中的面向對(duì)象(object-oriented)編程

    摘要:對(duì)象在中,除了數(shù)字字符串布爾值這幾個(gè)簡(jiǎn)單類型外,其他的都是對(duì)象。那么在函數(shù)對(duì)象中,這兩個(gè)屬性的有什么區(qū)別呢表示該函數(shù)對(duì)象的原型表示使用來(lái)執(zhí)行該函數(shù)時(shí)這種函數(shù)一般成為構(gòu)造函數(shù),后面會(huì)講解,新創(chuàng)建的對(duì)象的原型。這時(shí)的函數(shù)通常稱為構(gòu)造函數(shù)。。 本文原發(fā)于我的個(gè)人博客,經(jīng)多次修改后發(fā)到sf上。本文仍在不斷修改中,最新版請(qǐng)?jiān)L問(wèn)個(gè)人博客。 最近工作一直在用nodejs做開發(fā),有了nodejs,...

    JerryZou 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

Magicer

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<