在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ HTML/ 正則表達(dá)式
頁(yè)面打印
事件
JavaScript 內(nèi)置函數(shù)
For 循環(huán)
對(duì)象概述
正則表達(dá)式
函數(shù)
算數(shù)對(duì)象
For...in
位置結(jié)構(gòu)
瀏覽器兼容性
數(shù)字對(duì)象
錯(cuò)誤 & 異常處理
啟用
文檔對(duì)象模型
動(dòng)畫
循環(huán)控制
While 循環(huán)
If...Else
頁(yè)面重定向
概述
語(yǔ)法
多媒體
對(duì)話框
快速指南
日期對(duì)象
Cookies
調(diào)試
表單有效性驗(yàn)證
布爾對(duì)象
Void 關(guān)鍵字
數(shù)組對(duì)象
變量
運(yùn)算符
Switch Case
圖像映射
字符串對(duì)象

正則表達(dá)式

正則表達(dá)式是一個(gè)對(duì)象,這個(gè)對(duì)象描述一種字符模式。

JavaScript RegExp 類代表正則表達(dá)式,字符串和 RegExp 都定義了方法,在方法中使用正則表達(dá)式來(lái)執(zhí)行文本中強(qiáng)大的模式匹配和搜索替換功能。

語(yǔ)法

正則表達(dá)式可以被 RegExp() 構(gòu)造函數(shù)定義,如下所示:

    var pattern = new RegExp(pattern, attributes);   
    or simply   
    var patter = /pattern/attributes;

參數(shù)描述:

  • pattern:是一個(gè)字符串,指定了正則表達(dá)式的模式或其他正則表達(dá)式。
  • attributes:是一個(gè)可選的字符串,包含屬性 "g"、"i" 和 "m",分別用于指定全局匹配、區(qū)分大小寫的匹配和多行匹配。

方括號(hào)

方括號(hào) ([]) 用于正則表達(dá)式的上下文中時(shí)有特殊意義,用來(lái)查找一系列字符。

表達(dá) 描述
[...] 查找方括號(hào)之間的任何字符
[^...] 查找任何不在方括號(hào)之間的字符
[0-9] 查找任何從 0 至 9 的數(shù)字
[a-z] 查找任何小寫 a 到小寫 z 的字符
[A-Z] 查找任何大寫 A 到大寫 Z 的字符
[a-Z] 查找任何小寫 a 到大寫 Z 的字符

上面所示的范圍為一般情況;還可以使用范圍 (0-3) 匹配任何從 0 到 3 的十進(jìn)制數(shù)字,或范圍 (b-v) 來(lái)匹配任何從小寫 b 到小寫 v 的字符。

量詞

方括號(hào)括起來(lái)的字符序列或單個(gè)字符出現(xiàn)的頻率或位置可以用一個(gè)特殊的符號(hào)來(lái)表示。每個(gè)特殊字符都有一個(gè)特定的含義。+、*、? 和 $ 符號(hào)都遵循一個(gè)字符序列模式。

表達(dá) 描述
p+ 匹配任何包含至少一個(gè) p 的字符串
p* 匹配任何包含零個(gè)或多個(gè) p 的字符串
p? 匹配任何包含零個(gè)或一個(gè) p 的字符串
p{N} 匹配包含 N 個(gè) p 的序列字符串
p{2,3} 匹配包含 2 或 3 個(gè) p 的序列的字符串
p{2,} 匹配包含至少 2 個(gè) p 的序列的字符串
p$ 匹配任何結(jié)尾為 p 的字符串
^p 匹配任何開(kāi)頭為 p 的字符串

例子

下面的例子會(huì)幫助理清字符匹配的概念。

表達(dá) 描述
[^a-zA-Z] 匹配任何不包含從 a 到 z 和從 A 到 Z 中任何字符的字符串
p.p 匹配任何以一個(gè) p 開(kāi)始、其次是任意字符、緊隨其后的是另一個(gè) p 的字符串
^.{2}$ 匹配任何包含兩個(gè)字符的字符串
<b>(.*)</b> 匹配任何封閉在 <b> 和 </b> 內(nèi)的字符串
p(hp)* 匹配任何包含一個(gè) p、緊隨其后的零個(gè)或多個(gè) hp 序列的字符串

原義字符

字符 描述
Alphanumeric 它自己
\0 查找 NUL 字符(\u0000)
\t 查找制表符(\u0009)
\n 查找換行符(\u000A)
\v 查找垂直制表符(\u000B)
\f 查找換頁(yè)符(\u000C)
\r 查找回車符(\u000D)
\xnn 指定的以十六進(jìn)制數(shù) nn 表示的拉丁字符;例如 \x0A 和 \n 表示的一樣
\uxxxx 查找以十六進(jìn)制數(shù) xxxx 規(guī)定的 Unicode 字符,例如 \u0009 和 \t 表示的一樣
\cX 控制字符 ^X;例如 \cJ 相當(dāng)于換行符 \n

元字符

元字符:在一個(gè)字母字符之前加上一個(gè)反斜杠,使這個(gè)組合具有特殊的含義。

例如,您可以使用 '\d' 元字符搜索大量資金數(shù)額:/([\d]+)000/,這里 \d 將尋找任何數(shù)值字符的字符串。

下面是元字符的列表,使用 PERL 風(fēng)格的正則表達(dá)式表達(dá)。

字符 描述
. 單個(gè)字符
\s 空白字符(空格、制表符、換行符)
\S 非空白字符
\d 數(shù)字字符(0-9)
\D 非數(shù)字字符
\w 單詞字符(a-z,A-Z,0-9,_)
\W 非單詞字符
[\b] 一個(gè)文字退格(特殊情況)
[aeiou] 匹配一個(gè)在給定集合內(nèi)的字符
[^aeiou] 匹配一個(gè)不在給定集合內(nèi)的字符
[foo|bar|baz] 匹配任何指定的備選方案

修飾

幾個(gè)可用的 regexp 修飾符,它能使你的工作更容易,比如大小寫敏感、搜索多個(gè)行等。

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

RegExp屬性

這是 RegExp 的各個(gè)屬性及對(duì)應(yīng)的屬性描述的列表。

屬性 描述
constructor 指定創(chuàng)建一個(gè)對(duì)象原型的函數(shù)
global RegExp 對(duì)象是否具有標(biāo)志 g
ignoreCase RegExp 對(duì)象是否具有標(biāo)志 i
lastIndex 一個(gè)整數(shù),標(biāo)示開(kāi)始下一次匹配的字符位置
multiline RegExp 對(duì)象是否具有標(biāo)志 m
source 正則表達(dá)式的源文本

RegExp方法

這是 RegExp 的各個(gè)方法及對(duì)應(yīng)的屬性描述的列表。

方法 描述
exec() 檢索字符串中指定的值。返回找到的值,并確定其位置
test() 檢索字符串中指定的值。返回 ture 或 false
toSource 返回一個(gè)對(duì)象字面值代表指定的對(duì)象;您可以使用這個(gè)值來(lái)創(chuàng)建一個(gè)新的對(duì)象。
toString() 返回一個(gè)代表指定對(duì)象的字符串。
上一篇:對(duì)話框下一篇:布爾對(duì)象