導航:首頁 > 編程語言 > js正則表達式取反

js正則表達式取反

發布時間:2022-09-28 15:15:25

js正則表達

1.常用的
.
匹配除換行符(\n、\r)之外的任何單個字元


或。x|y匹配 x 或 y。

[xyz]
字元集合。匹配所包含的任意一個字元。
[^xyz]
取反。負值字元集合。匹配未包含的任意字元。

2.從教程粘貼全部
\
將下一個字元標記為一個特殊字元、或一個原義字元、或一個 向後引用、或一個八進制轉義符。例如,'n' 匹配字元 "n"。'\n' 匹配一個換行符。序列 '\' 匹配 "" 而 "(" 則匹配 "("。

^
匹配輸入字元串的開始位置。如果設置了 RegExp 對象的 Multiline 屬性,^ 也匹配 '\n' 或 '\r' 之後的位置。

也匹配 '\n' 或 '\r' 之前的位置。

匹配前面的子表達式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等價於{0,}。

匹配前面的子表達式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等價於 {1,}。

?
匹配前面的子表達式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 。? 等價於 {0,1}。

{n}
n 是一個非負整數。匹配確定的 n 次。例如,'o{2}' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的兩個 o。

{n,}
n 是一個非負整數。至少匹配n 次。例如,'o{2,}' 不能匹配 "Bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o{1,}' 等價於 'o+'。'o{0,}' 則等價於 'o*'。

{n,m}
m 和 n 均為非負整數,其中n <= m。最少匹配 n 次且最多匹配 m 次。例如,"o{1,3}" 將匹配 "fooooood" 中的前三個 o。'o{0,1}' 等價於 'o?'。請注意在逗號和兩個數之間不能有空格。

?
當該字元緊跟在任何一個其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 後面時,匹配模式是非貪婪的。非貪婪模式盡可能少的匹配所搜索的字元串,而默認的貪婪模式則盡可能多的匹配所搜索的字元串。例如,對於字元串 "oooo",'o+?' 將匹配單個 "o",而 'o+' 將匹配所有 'o'。

.
匹配除換行符(\n、\r)之外的任何單個字元。要匹配包括 '\n' 在內的任何字元,請使用像"(.|\n)"的模式。

(pattern)
匹配 pattern 並獲取這一匹配。所獲取的匹配可以從產生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中則使用 9 屬性。要匹配圓括弧字元,請使用 '(' 或 ')'。

(?:pattern)
匹配 pattern 但不獲取匹配結果,也就是說這是一個非獲取匹配,不進行存儲供以後使用。這在使用 "或" 字元 (|) 來組合一個模式的各個部分是很有用。例如, 'instr(?:y|ies) 就是一個比 'instry|instries' 更簡略的表達式。

(?=pattern)
正向肯定預查(look ahead positive assert),在任何匹配pattern的字元串開始處匹配查找字元串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以後使用。例如,"Windows(?=95|98|NT|2000)"能匹配"Windows2000"中的"Windows",但不能匹配"Windows3.1"中的"Windows"。預查不消耗字元,也就是說,在一個匹配發生後,在最後一次匹配之後立即開始下一次匹配的搜索,而不是從包含預查的字元之後開始。

(?!pattern)
正向否定預查(negative assert),在任何不匹配pattern的字元串開始處匹配查找字元串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以後使用。例如"Windows(?!95|98|NT|2000)"能匹配"Windows3.1"中的"Windows",但不能匹配"Windows2000"中的"Windows"。預查不消耗字元,也就是說,在一個匹配發生後,在最後一次匹配之後立即開始下一次匹配的搜索,而不是從包含預查的字元之後開始。

(?<=pattern) 反向(look behind)肯定預查,與正向肯定預查類似,只是方向相反。例如,"(?<=95|98|NT|2000)Windows"能匹配"2000Windows"中的"Windows",但不能匹配"3.1Windows"中的"Windows"。
(?<!pattern) 反向否定預查,與正向否定預查類似,只是方向相反。例如"(?<!95|98|NT|2000)Windows"能匹配"3.1Windows"中的"Windows",但不能匹配"2000Windows"中的"Windows"。
x|y
匹配 x 或 y。例如,'z|food' 能匹配 "z" 或 "food"。'(z|f)ood' 則匹配 "zood" 或 "food"。

[xyz]
字元集合。匹配所包含的任意一個字元。例如, '[abc]' 可以匹配 "plain" 中的 'a'。

[^xyz]
負值字元集合。匹配未包含的任意字元。例如, '[^abc]' 可以匹配 "plain" 中的'p'、'l'、'i'、'n'。

[a-z]
字元范圍。匹配指定范圍內的任意字元。例如,'[a-z]' 可以匹配 'a' 到 'z' 范圍內的任意小寫字母字元。

[^a-z]
負值字元范圍。匹配任何不在指定范圍內的任意字元。例如,'[^a-z]' 可以匹配任何不在 'a' 到 'z' 范圍內的任意字元。

\b
匹配一個單詞邊界,也就是指單詞和空格間的位置。例如, 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'。

\B
匹配非單詞邊界。'er\B' 能匹配 "verb" 中的 'er',但不能匹配 "never" 中的 'er'。

\cx
匹配由 x 指明的控制字元。例如, \cM 匹配一個 Control-M 或回車符。x 的值必須為 A-Z 或 a-z 之一。否則,將 c 視為一個原義的 'c' 字元。

\d
匹配一個數字字元。等價於 [0-9]。

\D
匹配一個非數字字元。等價於 [^0-9]。

\f
匹配一個換頁符。等價於 \x0c 和 \cL。

\n
匹配一個換行符。等價於 \x0a 和 \cJ。

\r
匹配一個回車符。等價於 \x0d 和 \cM。

\s
匹配任何空白字元,包括空格、製表符、換頁符等等。等價於 [ \f\n\r\t\v]。

\S
匹配任何非空白字元。等價於 [^ \f\n\r\t\v]。

\t
匹配一個製表符。等價於 \x09 和 \cI。

\v
匹配一個垂直製表符。等價於 \x0b 和 \cK。

\w
匹配字母、數字、下劃線。等價於'[A-Za-z0-9_]'。

\W
匹配非字母、數字、下劃線。等價於 '[^A-Za-z0-9_]'。

\xn
匹配 n,其中 n 為十六進制轉義值。十六進制轉義值必須為確定的兩個數字長。例如,'\x41' 匹配 "A"。'\x041' 則等價於 '\x04' & "1"。正則表達式中可以使用 ASCII 編碼。

\num
匹配 num,其中 num 是一個正整數。對所獲取的匹配的引用。例如,'(.)\1' 匹配兩個連續的相同字元。

\n
標識一個八進制轉義值或一個向後引用。如果 \n 之前至少 n 個獲取的子表達式,則 n 為向後引用。否則,如果 n 為八進制數字 (0-7),則 n 為一個八進制轉義值。

\nm
標識一個八進制轉義值或一個向後引用。如果 \nm 之前至少有 nm 個獲得子表達式,則 nm 為向後引用。如果 \nm 之前至少有 n 個獲取,則 n 為一個後跟文字 m 的向後引用。如果前面的條件都不滿足,若 n 和 m 均為八進制數字 (0-7),則 \nm 將匹配八進制轉義值 nm。

\nml
如果 n 為八進制數字 (0-3),且 m 和 l 均為八進制數字 (0-7),則匹配八進制轉義值 nml。

\un
匹配 n,其中 n 是一個用四個十六進制數字表示的 Unicode 字元。例如, \u00A9 匹配版權符號 (?)。

3.校驗數字的表達式
數字:^[0-9]
至少n位的數字:^\d{n,}
零和非零開頭的數字:^(0|[1-9][0-9] )
帶1-2位小數的正數或負數:^(-)?\d+(.\d{1,2})?
有兩位小數的正實數:^[0-9]+(.[0-9]{2})?
非零的正整數:^[1-9]\d 或 ^+?[1-9][0-9] 或 ^-[1-9]\d 或 ^[1-9]\d |0 或 ^((-\d+)|(0+)) 或 ^[1-9]\d .\d |0.\d [1-9]\d |0?.0+|0 或 ^(-([1-9]\d .\d |0.\d [1-9]\d ))|0?.0+|0 或 ^(([0-9]+.[0-9] [1-9][0-9] )|([0-9] [1-9][0-9] .[0-9]+)|([0-9] [1-9][0-9] )) 或 ^(-(([0-9]+.[0-9] [1-9][0-9] )|([0-9] [1-9][0-9] .[0-9]+)|([0-9] [1-9][0-9] ))) 或 ^-?([1-9]\d .\d |0.\d [1-9]\d |0?.0+|0)$

4.校驗字元的表達式
漢字:^[\u4e00-\u9fa5]{0,} 或 ^[A-Za-z0-9]{4,40}
由26個英文字母組成的字元串:^[A-Za-z]+
由26個小寫英文字母組成的字元串:^[a-z]+
由數字、26個英文字母或者下劃線組成的字元串:^\w+
中文、英文、數字包括下劃線:^[\u4E00-\u9FA5A-Za-z0-9_]+ 或 ^[\u4E00-\u9FA5A-Za-z0-9]{2,20} "等字元:[^%&',;=?$\x22]+
禁止輸入含有 的字元:[^ \x22]+

5.特殊需求表達式
1 Email地址:^\w+([-+.]\w+) @\w+([-.]\w+) .\w+([-.]\w+)*
4 手機號碼:^(13[0-9]|14[0-9]|15[0-9]|166|17[0-9]|18[0-9]|19[8|9])\d{8} /;//如:

if (re.test(vmData.PHONE) === false) {
alert("手機號格式不正確");
return;
}

5 電話號碼("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^((\d{3,4}-)|\d{3.4}-)?\d{7,8} 8 帳號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}
10 強密碼(必須包含大小寫字母和數字的組合,不能使用特殊字元,長度在8-10之間):^(?=. \d)(?=. [a-z])(?=. [A-Z]).{8,10}
13 一個月的31天(01~09和1~31):^((0?[1-9])|((1|2)[0-9])|30|31)
16 2.這表示任意一個不以0開頭的數字,但是,這也意味著一個字元"0"不通過,所以我們採用下面的形式:^(0|[1-9][0-9] )
18 4.這表示一個0或者一個可能為負的開頭不為0的數字.讓用戶以0開頭好了.把負號的也去掉,因為錢總不能是負的吧.下面我們要加的是說明可能的小數部分:^[0-9]+(.[0-9]+)?
20 6.這樣我們規定小數點後面必須有兩位,如果你認為太苛刻了,可以這樣:^[0-9]+(.[0-9]{1,2})?
22 8.1到3個數字,後面跟著任意個 逗號+3個數字,逗號成為可選,而不是必須:^([0-9]+|[0-9]{1,3}(,[0-9]{3}) )(.[0-9]{1,2})?
25 中文字元的正則表達式:[\u4e00-\u9fa5]
26 雙位元組字元:[^\x00-\xff] (包括漢字在內,可以用來計算字元串的長度(一個雙位元組字元長度計2,ASCII字元計1))27 空白行的正則表達式:\n\s \r (可以用來刪除空白行)
28 HTML標記的正則表達式:<(\S ?)[^>] >. ?</\1>|<. ? /> (網上流傳的版本太糟糕,上面這個也僅僅能部分,對於復雜的嵌套標記依舊無能為力)29 首尾空白字元的正則表達式:^\s |\s ) (可以用來刪除行首行尾的空白字元(包括空格、製表符、換頁符等等),非常有用的表達式)
30 騰訊QQ號:[1-9][0-9]{4,} (騰訊QQ號從10000開始)
31 中國郵政編碼:[1-9]\d{5}(?!\d) (中國郵政編碼為6位數字)
32 IP地址:\d+.\d+.\d+.\d+ (提取IP地址時有用)33 IP地址:((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d)) (由@飛龍三少 提供,感謝共享)

取自 https://www.cnblogs.com/damoblog/p/9596814.html

❷ 正則表達式 取反

java">所謂取反,就是非的意思,例如空格和非空格就是相反的
[s]
[^s]

❸ 怎樣可以對某個正則表達式的匹配結果取反

grep對匹配結果取反: grep -v "pattem" file > file2。 grep (縮寫來自Globally search a Regular Expression and Print)是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行列印出來。Unix的grep家族包括grep、egrep和fgre

❹ 在Javascript中test()的正則表達式前有兩個波浪號是什麼意思

按位「非」運算符 (~)
對一個表達式執行按位「非」(取反)。

result = ~ expression

參數
result

任何變內量。

expression

任何錶達式。

說明
所有一元運算符,容如 ~ 運算符,以如下規則來求表達式的值:

如果將它用於 undefined 或 null 表達式,則產生一個運行時錯誤。
對象被轉換成字元串。
如果可能,字元串被轉換為數字。如果不能,則產生一個運行時錯誤。
Boolean 值被當作數字(如果是 false 則為 0,如果是 true 則為 1)。
用該運算符來生成數字。

~ 運算符查看錶達式的二進製表示法的值,並執行按位非操作。該操作的結果如下所示:

0101 (expression)
----
1010 (result)
表達式中的任何一位為 1,則在結果中相應位變為 0。表達式中的任何一位為 0,則在結果中相應位變為 1。

❺ 正則表達式 取反

正則表達式對象用來規范一個規范的表達式(也就是表達式符不符合特定的要求,比如是不是email地址格式等),它具有用來檢查給出的字元串是否符合規則的屬性和方法。

❻ 正則表達式怎樣取反

Replace方法,把所有的匹配項替換成空字元串,結果不就是「除了html標簽之外的東西」了么?

試試看行不行。

那你可以試試這個表達式(\<[a-zA-Z]+\>){1}(.+)(\<\/[a-zA-Z]+\>){1}。匹配出來的group2裡面就是內容。不過寫得比較匆忙,如果內容里還有html標簽的話,group2里還會包含標簽,可能需要遞歸捕獲,不過如果你的應用場景能保證不出現這種情況的話,也無所謂。或者等其他人出手吧。

❼ 正則表達式中取反用什麼符號表示

^。

❽ 如何對正則表達式整體取反

首先指出,在[]裡面不需要轉義字元\,所以後面半截是[/],不是[\/]

獲取html標簽以外的版東西很簡單,權變通一下,你想啊,在<>裡面的是HTML標簽,那麼在<>外面的不就是其他文字了嗎?

繼續變通,非標簽文字都是在<>和</>之間的嘛,那樣,不是HTML標簽的文字部分不就是在>和<裡面的東西嘛……

所以匹配規則
>([^<>])*<
這樣獲取的就是HTML標簽外的東西!

❾ JS的正則表達式:tring.prototype.Trim = function(){return this.replace(/(^\s*)|(\s*$)/g, "");}

函數的作用是去除字元串首尾的空白字元(包括空格,回車符,換行符,製表符)。
正則表達式中(^\s*)是從字元串開頭匹配任意長度的空白字元(盡可能多匹配);
(\s*$)是匹配到字元串結尾任意長度的空白字元(盡可能多匹配);
而豎線|則代表或的意思,即可以是匹配開頭盡可能多的空白字元,也可以是匹配到結尾盡可能多的空白字元;
而/g代表整個字元串都進行匹配。

❿ js 正則表達式

1、選好釣位常是收獲好的關鍵。常在同一個水域,有的地方上魚很快,有的地方很久咬一次鉤,釣位不當常是原因之一。選好釣位主要憑經驗。魚有魚道,即其經常的遊行路徑,棲聚也有自己的習慣。一般地說,自然水域,如水塘、河溝、湖泊、河流等等,應選擇有水草、蘆葦的地方下鉤。事實上,人工養魚池喂料台附近是最易集結魚群的地方,特別是喂料時間的前後,道理不言自明。


2、選准

:主要指所釣的魚種最喜歡吃的食物。如鯽魚之於蚯蚓、紅蟲,鯉魚之於玉米面,草魚之於蘆葦芯和螞蚱,梭魚之於海蠶,羅非魚之於小蝦等等。市場上現有科學配製的針對不同魚類愛好的合成餌料也都很有效。用來浸透合以粘性較好的麵食,常是魚群最愛搶食的餌料。總之。垂釣之前一定要摸清所釣的魚種與其習性。如果不清楚,可多帶幾種餌料,到時選用。


3、勇於探索,大膽實踐

許多釣魚者勇於開拓,善於歷險,他們攀登懸崖峭壁,穿過茂密森林,淌過荒漠河灘,大膽實踐,敢於試釣別人不敢觸及的「禁區」;荷葉密匝的空隙,蘆葦叢生的地帶,水草蔓生的地方,倒樹斜枝的旁邊,往往收獲較多。並且能豐富釣魚知識,鍛煉身體,體會大自然之妙,真是一舉多得啊!

閱讀全文

與js正則表達式取反相關的資料

熱點內容
為神魔壓縮文件無圖標 瀏覽:134
潛江廣華電影院哪個好 瀏覽:555
psapp圖標教程 瀏覽:390
大數據文庫 瀏覽:29
家庭教師韓國電影推薦 瀏覽:966
票房大賣王排行榜怎麼祝賀 瀏覽:710
中國大數據中心選址 瀏覽:310
微信群名字顏色 瀏覽:413
電腦自動彈出刪除文件 瀏覽:210
美國大片哪個網站比較靠譜 瀏覽:456
一個男的吃了成精的人參是什麼電影 瀏覽:883
麗芙泰勒窗檯101 瀏覽:367
韓日電影愛情片免費看2020 瀏覽:224
易捷文件夾加密軟體下載 瀏覽:897
台灣電影女老師學生 瀏覽:826
手機可以在線觀看的網址 瀏覽:913
iso響應手機qq代碼 瀏覽:39
9300外屏更換教程 瀏覽:355
微書房的書在哪個文件夾 瀏覽:71

友情鏈接