正則字符 | 描述 |
---|---|
\ | 将下(xià)一(yī)個(gè)字符标記為(wèi)一(yī)個(gè)特殊字符、或一(yī)個(gè)原義字符、或一(yī)個(gè)向後引用、或一(yī)個(gè)八進制轉義符。例如,“n "匹配字符"n "。"\n "匹配一(yī)個(gè)換行符。串行"\\ "匹配"\ "而"\( "則匹配"( "。
|
^ | 匹配輸入字符串的開(kāi)始位置。如果設置了RegExp對象的Multiline屬性,^也匹配“\n "或"\r "之後的位置。
|
$ | 匹配輸入字符串的結束位置。如果設置了RegExp對象的Multiline屬性,$也匹配“\n "或"\r "之前的位置。
|
* | 匹配前面的子表達式零次或多(duō)次。例如,zo*能(néng)匹配“z "以及"zoo "。*等價于{0,}。
|
+ | 匹配前面的子表達式一(yī)次或多(duō)次。例如,“zo+ "能(néng)匹配"zo "以及"zoo ",但不能(néng)匹配"z "。+等價于{1,}。
|
? | 匹配前面的子表達式零次或一(yī)次。例如,“do(es)? "可以匹配"does "或"does "中的"do "。?等價于{0,1}。
|
{n} | n是一(yī)個(gè)非負整數。匹配确定的n次。例如,“o{2} "不能(néng)匹配"Bob "中的"o ",但是能(néng)匹配"food "中的兩個(gè)o。
|
{n,} | n是一(yī)個(gè)非負整數。至少匹配n次。例如,“o{2,} "不能(néng)匹配"Bob "中的"o ",但能(néng)匹配"foooood "中的所有o。"o{1,} "等價于"o+ "。"o{0,} "則等價于"o* "。
|
{n,m} | m和n均為(wèi)非負整數,其中n<=m。最少匹配n次且最多(duō)匹配m次。例如,“o{1,3} "将匹配"fooooood "中的前三個(gè)o。"o{0,1} "等價于"o? "。請注意在逗号和兩個(gè)數之間不能(néng)有空格。
|
? | 當該字符緊跟在任何一(yī)個(gè)其他限制符(*,+,?,{n},{n,},{n,m})後面時,匹配模式是非貪婪的。非貪婪模式盡可能(néng)少的匹配所搜索的字符串,而默認的貪婪模式則盡可能(néng)多(duō)的匹配所搜索的字符串。例如,對于字符串“oooo ","o+? "将匹配單個(gè)"o ",而"o+ "将匹配所有"o "。
|
. | 匹配除“\ n "之外的任何單個(gè)字符。要匹配包括"\ n "在内的任何字符,請使用像"(.|\n) "的模式。
|
(pattern) | 匹配pattern并獲取這一(yī)匹配。所獲取的匹配可以從(cóng)産生(shēng)的Matches集合得到(dào),在VBScript中使用SubMatches集合,在JScript中則使用$0…$9屬性。要匹配圓括号字符,請使用“\( "或"\) "。
|
(?:pattern) | 匹配pattern但不獲取匹配結果,也就(jiù)是說這是一(yī)個(gè)非獲取匹配,不進行存儲供以後使用。這在使用或字符“(|) "來組合一(yī)個(gè)模式的各個(gè)部分是很有用。例如"industr(?:y|ies) "就(jiù)是一(yī)個(gè)比"industry|industries "更簡略的表達式。
|
(?=pattern) | 正向肯定預查,在任何匹配pattern的字符串開(kāi)始處匹配查找字符串。這是一(yī)個(gè)非獲取匹配,也就(jiù)是說,該匹配不需要獲取供以後使用。例如,“Windows(?=95|98|NT|2000) "能(néng)匹配"Windows2000 "中的"Windows ",但不能(néng)匹配"Windows3.1 "中的"Windows "。預查不消耗字符,也就(jiù)是說,在一(yī)個(gè)匹配發生(shēng)後,在最後一(yī)次匹配之後立即開(kāi)始下(xià)一(yī)次匹配的搜索,而不是從(cóng)包含預查的字符之後開(kāi)始。
|
(?!pattern) | 正向否定預查,在任何不匹配pattern的字符串開(kāi)始處匹配查找字符串。這是一(yī)個(gè)非獲取匹配,也就(jiù)是說,該匹配不需要獲取供以後使用。例如“Windows(?!95|98|NT|2000) "能(néng)匹配"Windows3.1 "中的"Windows ",但不能(néng)匹配"Windows2000 "中的"Windows "。預查不消耗字符,也就(jiù)是說,在一(yī)個(gè)匹配發生(shēng)後,在最後一(yī)次匹配之後立即開(kāi)始下(xià)一(yī)次匹配的搜索,而不是從(cóng)包含預查的字符之後開(kāi)始
|
(?<=pattern) | 反向肯定預查,與正向肯定預查類拟,隻是方向相(xiàng)反。例如,“(?<=95|98|NT|2000)Windows "能(néng)匹配"2000Windows "中的"Windows ",但不能(néng)匹配"3.1Windows "中的"Windows "。
|
(?<!pattern) | 反向否定預查,與正向否定預查類拟,隻是方向相(xiàng)反。例如“(?<!95|98|NT|2000)Windows "能(néng)匹配"3.1Windows "中的"Windows ",但不能(néng)匹配"2000Windows "中的"Windows "。
|
x|y | 匹配x或y。例如,“z|food "能(néng)匹配"z "或"food "。"(z|f)ood "則匹配"zood "或"food "。
|
[xyz] | 字符集合。匹配所包含的任意一(yī)個(gè)字符。例如,“[abc] "可以匹配"plain "中的"a "。
|
[^xyz] | 負值字符集合。匹配未包含的任意字符。例如,“[^abc] "可以匹配"plain "中的"p "。
|
[a-z] | 字符範圍。匹配指定範圍内的任意字符。例如,“[a-z] "可以匹配"a "到(dào)"z "範圍内的任意小(xiǎo)寫字母字符。
|
[^a-z] | 負值字符範圍。匹配任何不在指定範圍内的任意字符。例如,“[^a-z] "可以匹配任何不在"a "到(dào)"z "範圍内的任意字符。
|
\b | 匹配一(yī)個(gè)單詞邊界,也就(jiù)是指單詞和空格間的位置。例如,“er\b "可以匹配"never "中的"er ",但不能(néng)匹配"verb "中的"er "。
|
\B | 匹配非單詞邊界。“er\B "能(néng)匹配"verb "中的"er ",但不能(néng)匹配"never "中的"er "。
|
\cx | 匹配由x指明的控制字符。例如,\cM匹配一(yī)個(gè)Control-M或回車符。x的值必須為(wèi)A-Z或a-z之一(yī)。否則,将c視為(wèi)一(yī)個(gè)原義的“c "字符。
|
\d | 匹配一(yī)個(gè)數字字符。等價于[0-9]。 |
\D | 匹配一(yī)個(gè)非數字字符。等價于[^0-9]。 |
\f | 匹配一(yī)個(gè)換頁符。等價于\x0c和\cL。 |
\n | 匹配一(yī)個(gè)換行符。等價于\x0a和\cJ。 |
\r | 匹配一(yī)個(gè)回車符。等價于\x0d和\cM。 |
\s | 匹配任何空白(bái)字符,包括空格、制表符、換頁符等等。等價于[ \f\n\r\t\v]。 |
\S | 匹配任何非空白(bái)字符。等價于[^ \f\n\r\t\v]。 |
\t | 匹配一(yī)個(gè)制表符。等價于\x09和\cI。 |
\v | 匹配一(yī)個(gè)垂直制表符。等價于\x0b和\cK。 |
\w | 匹配包括下(xià)劃線的任何單詞字符。等價于“[A-Za-z0-9_] "。 |
\W | 匹配任何非單詞字符。等價于“[^A-Za-z0-9_] "。 |
\xn | 匹配n,其中n為(wèi)十六進制轉義值。十六進制轉義值必須為(wèi)确定的兩個(gè)數字長(cháng)。例如,“\x41 "匹配"A "。"\x041 "則等價于"\x04&1 "。正則表達式中可以使用ASCII編碼。.
|
\num | 匹配num,其中num是一(yī)個(gè)正整數。對所獲取的匹配的引用。例如,“(.)\1 "匹配兩個(gè)連續的相(xiàng)同字符。
|
\n | 标識一(yī)個(gè)八進制轉義值或一(yī)個(gè)向後引用。如果\n之前至少n個(gè)獲取的子表達式,則n為(wèi)向後引用。否則,如果n為(wèi)八進制數字(0-7),則n為(wèi)一(yī)個(gè)八進制轉義值。 |
\nm | 标識一(yī)個(gè)八進制轉義值或一(yī)個(gè)向後引用。如果\nm之前至少有nm個(gè)獲得子表達式,則nm為(wèi)向後引用。如果\nm之前至少有n個(gè)獲取,則n為(wèi)一(yī)個(gè)後跟文字m的向後引用。如果前面的條件(jiàn)都不滿足,若n和m均為(wèi)八進制數字(0-7),則\nm将匹配八進制轉義值nm。 |
\nml | 如果n為(wèi)八進制數字(0-3),且m和l均為(wèi)八進制數字(0-7),則匹配八進制轉義值nml。 |
\un | 匹配n,其中n是一(yī)個(gè)用四個(gè)十六進制數字表示的Unicode字符。例如,\u00A9匹配版權符号(©)。 |
用戶名 | /^[a-z0-9_-]{3,16}$/ |
---|---|
密碼 | /^[a-z0-9_-]{6,18}$/ |
密碼2 | (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$ (由數字/大寫字母/小(xiǎo)寫字母/标點符号組成,四種都必有,8位以上(shàng)) |
十六進制值 | /^#?([a-f0-9]{6}|[a-f0-9]{3})$/ |
電(diàn)子郵箱 | /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/ /^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/或\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* |
URL | /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/ 或 [a-zA-z]+://[^\s]* |
IP 地址 | /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/ /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/ 或 ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) |
HTML 标簽 | /^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/或<(.*)(.*)>.*<\/\1>|<(.*) \/> |
删除代碼\\注釋 | (?<!http:|\S)//.*$ |
匹配雙字節字符(包括漢字在内) | [^\x00-\xff] |
漢字(字符) | [\u4e00-\u9fa5] |
Unicode編碼中的漢字範圍 | /^[\u2E80-\u9FFF]+$/ |
中文及全角标點符号(字符) | [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee] |
日期(年(nián)-月(yuè)-日) | (\d{4}|\d{2})-((0?([1-9]))|(1[1|2]))-((0?[1-9])|([12]([1-9]))|(3[0|1])) |
日期(月(yuè)/日/年(nián)) | ((0?[1-9]{1})|(1[1|2]))/(0?[1-9]|([12][1-9])|(3[0|1]))/(\d{4}|\d{2}) |
時間(小(xiǎo)時:分鍾, 24小(xiǎo)時制) | ((1|0?)[0-9]|2[0-3]):([0-5][0-9]) |
中國(guó)大陸固定電(diàn)話号碼 | (\d{4}-|\d{3}-)?(\d{8}|\d{7}) |
中國(guó)大陸手機(jī)号碼 | 1\d{10} |
中國(guó)大陸郵政編碼 | [1-9]\d{5} |
中國(guó)大陸身份證号(15位或18位) | \d{15}(\d\d[0-9xX])? |
非負整數(正整數或零) | \d+ |
正整數 | [0-9]*[1-9][0-9]* |
負整數 | -[0-9]*[1-9][0-9]* |
整數 | -?\d+ |
小(xiǎo)數 | (-?\d+)(\.\d+)? |
空白(bái)行 | \n\s*\r 或者 \n\n(editplus) 或者 ^[\s\S ]*\n |
QQ号碼 | [1-9]\d{4,} |
不包含abc的單詞 | \b((?!abc)\w)+\b |
匹配首尾空白(bái)字符 | ^\s*|\s*$ |
編輯常用 |
以下(xià)是針對特殊中文的一(yī)些替換(editplus)
^[0-9].*\n
^[^第].*\n
^[習題].*\n
^[\s\S ]*\n
^[0-9]*\.
^[\s\S ]*\n
<p[^<>*]>
href="javascript:if\(confirm\('(.*?)'\)\)window\.location='(.*?)'"
<span
style=".[^"]*rgb\(255,255,255\)">.[^<>]*</span>
<DIV class=xs0>[\s\S]*?</DIV> |
正則表達式語法為(wèi)您常用正則表達式速查表,正則表達式語法查詢,常用正則表達式語法,正則表達式基本語法,子表達式語法,正則表達式修飾符,正則表達式貪婪模式,正則表達式非貪婪模式,通(tōng)過簡單快速的方法達到(dào)對于字符串的控制。
友(yǒu)情鏈接: 豫唐網絡