qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          JavaScript RegExp 對象

          RegExp 對象

          RegExp 對象表示正則表達式,它是對字符串執行模式匹配的強大工具。

          直接量語法

          /pattern/attributes

          創建 RegExp 對象的語法:

          new RegExp(pattern, attributes);

          參數

          參數 pattern 是一個字符串,指定了正則表達式的模式或其他正則表達式。

          參數 attributes 是一個可選的字符串,包含屬性 "g"、"i" 和 "m",分別用于指定全局匹配、區分大小寫的匹配和多行匹配。ECMAScript 標準化之前,不支持 m 屬性。如果 pattern 是正則表達式,而不是字符串,則必須省略該參數。

          返回值

          一個新的 RegExp 對象,具有指定的模式和標志。如果參數 pattern 是正則表達式而不是字符串,那么 RegExp() 構造函數將用與指定的 RegExp 相同的模式和標志創建一個新的 RegExp 對象。

          如果不用 new 運算符,而將 RegExp() 作為函數調用,那么它的行為與用 new 運算符調用時一樣,只是當 pattern 是正則表達式時,它只返回 pattern,而不再創建一個新的 RegExp 對象。

          拋出

          SyntaxError - 如果 pattern 不是合法的正則表達式,或 attributes 含有 "g"、"i" 和 "m" 之外的字符,拋出該異常。

          TypeError - 如果 pattern 是 RegExp 對象,但沒有省略 attributes 參數,拋出該異常。

          修飾符

          修飾符描述
          i執行對大小寫不敏感的匹配。
          g執行全局匹配(查找所有匹配而非在找到第一個匹配后停止)。
          m執行多行匹配。

          方括號

          方括號用于查找某個范圍內的字符:

          表達式描述
          [abc]查找方括號之間的任何字符。
          [^abc]查找任何不在方括號之間的字符。
          [0-9]查找任何從 0 至 9 的數字。
          [a-z]查找任何從小寫 a 到小寫 z 的字符。
          [A-Z]查找任何從大寫 A 到大寫 Z 的字符。
          [A-z]查找任何從大寫 A 到小寫 z 的字符。
          [adgk]查找給定集合內的任何字符。
          [^adgk]查找給定集合外的任何字符。
          (red|blue|green)查找任何指定的選項。

          元字符

          元字符(Metacharacter)是擁有特殊含義的字符:

          元字符描述
          .查找單個字符,除了換行和行結束符。
          \w查找單詞字符。
          \W查找非單詞字符。
          \d查找數字。
          \D查找非數字字符。
          \s查找空白字符。
          \S查找非空白字符。
          \b匹配單詞邊界。
          \B匹配非單詞邊界。
          \0查找 NUL 字符。
          \n查找換行符。
          \f查找換頁符。
          \r查找回車符。
          \t查找制表符。
          \v查找垂直制表符。
          \xxx查找以八進制數 xxx 規定的字符。
          \xdd查找以十六進制數 dd 規定的字符。
          \uxxxx查找以十六進制數 xxxx 規定的 Unicode 字符。

          量詞

          量詞描述
          n+匹配任何包含至少一個 n 的字符串。
          n*匹配任何包含零個或多個 n 的字符串。
          n?匹配任何包含零個或一個 n 的字符串。
          n{X}匹配包含 X 個 n 的序列的字符串。
          n{X,Y}匹配包含 X 或 Y 個 n 的序列的字符串。
          n{X,}匹配包含至少 X 個 n 的序列的字符串。
          n$匹配任何結尾為 n 的字符串。
          ^n匹配任何開頭為 n 的字符串。
          ?=n匹配任何其后緊接指定字符串 n 的字符串。
          ?!n匹配任何其后沒有緊接指定字符串 n 的字符串。

          RegExp 對象屬性

          屬性描述FFIE
          globalRegExp 對象是否具有標志 g。14
          ignoreCaseRegExp 對象是否具有標志 i。14
          lastIndex一個整數,標示開始下一次匹配的字符位置。14
          multilineRegExp 對象是否具有標志 m。14
          source正則表達式的源文本。14

          RegExp 對象方法

          方法描述FFIE
          compile編譯正則表達式。14
          exec檢索字符串中指定的值。返回找到的值,并確定其位置。14
          test檢索字符串中指定的值。返回 true 或 false。14

          支持正則表達式的 String 對象的方法

          方法描述FFIE
          search檢索與正則表達式相匹配的值。14
          match找到一個或多個正則表達式的匹配。14
          replace替換與正則表達式匹配的子串。14
          split把字符串分割為字符串數組。14

          posted on 2014-03-31 16:36 順其自然EVO 閱讀(166) 評論(0)  編輯  收藏 所屬分類: js

          <2025年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 昌图县| 石泉县| 吐鲁番市| 广昌县| 简阳市| 分宜县| 竹北市| 万源市| 盐山县| 沂南县| 于都县| 云浮市| 泰州市| 贡嘎县| 日喀则市| 龙江县| 东丽区| 潼南县| 忻城县| 漳州市| 萝北县| 兴安盟| 手游| 大埔县| 泰宁县| 巴中市| 兴隆县| 北流市| 彰武县| 岳阳县| 兴海县| 伊金霍洛旗| 大连市| 舒城县| 盐边县| 四川省| 旺苍县| 积石山| 秦皇岛市| 同江市| 微博|