成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

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

Magicer / 1206人閱讀

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

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

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

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

符號 直接量字符

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

字符類

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

var str = "king";

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

// 正則表達(dá)式的內(nèi)容中定義規(guī)則 -> 驗證的內(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á)式用來描述任意多位的數(shù)字,或者描述由三個字母和一個數(shù)字構(gòu)成的字符串時,可以使用字符重復(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á)式中的多個元素才能夠匹配字符串的一個字符,這些元素稱之為正則表達(dá)式的錨。因為它們將模式定位在搜索字符串的特定位置上。

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

var str = "12a45";

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

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

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

正則表達(dá)式的修飾符,用于說明高級匹配模式的規(guī)則。修飾符是放在“/”符號后面的,JavaScript支持三個修飾符
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);
對象 創(chuàng)建RegExp對象

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

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

RegExp對象的方法

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

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/108425.html

相關(guān)文章

  • 前端_JavaScript_面向對象編程

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

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

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

    SwordFly 評論0 收藏0
  • JavaScript對象的深淺復(fù)制

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

    B0B0 評論0 收藏0
  • 理解javascript核心知識點

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

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

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

    JerryZou 評論0 收藏0

發(fā)表評論

0條評論

Magicer

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<