正規表示式(RegExp)的學習

2021-06-23 03:31:07 字數 1655 閱讀 9366

1、正規表示式的語法

兩個特殊的字元:'^'和'$',前者表示開始,後者表示結尾。

例如:"^the":表示所以"the"開始的字串("there","the cat"等;"of despair$":表示所以以"of despair"結尾的字串;

"^abc$":表示開始和結尾都是"abc"的字串——呵呵,只"abc"自己了;"notice":表示任何包含"notice"的字串。

'*','+','?'三個符號的使用:

*表示:沒有或更多。    +表示:至少乙個或更多。?表示沒有或乙個。應用舉例

「mn*」:表示m後面有0個或者更多的n。(m,mn,mnn,,,,,)

「mn+」表示m後面有1個或者更多的n。(mn,mnn,mnnn..........)

「mn?」表示m後面有1個或者0個n。(mn,m)

'{}'表示重複次數的範圍,或者說是匹配的長度。

"mn"表示字串中m後面跟著2個n。(mnn)

"mn"表示字串中m後面至少跟著2個n。(mnn,mnnn,mnnnn......)

"mn"表示字串中m後面跟著2個到4個n。(mnn,mnnn,mnnnn)

'( )'表示提取匹配的字串。表示式中有幾個括號就有幾個相應的匹配字串。

"( aa)"表示aa字元。

'|'表示「或」操作。

"ab|cd"表示乙個字串有ab或者cd。

"(a|b)ddd"表示「addd」或者「bddd」。

"(a|b)*s"表示一串由a,b組成的字串後面跟著乙個s。

'[ ]'表示定義匹配的字元範圍。(一字元列表,匹配列出中的任一字元。)

'[a-za-z0-9]' 表示相應位置的字元要匹配英文本元和數字。

'[\s*]'表示空格或者*號。

'[0-9]%'表示乙個百分號前有一位的數字。

'.'表示任意乙個字元。

'a.[1-8]'表示乙個字串有乙個a後面跟著乙個任意字元和乙個除零以外的數字。

'[^xyz]' 表示一字元補集,也就是說,它匹配除了列出的字元外的所有東西。 你可以使用連字元-指出一 字元範圍。 

例如:[^abc]和[^a-c]等價,它們最早匹配"brisket"中的'r'和"chop."中的'h'。 

'[b]'表示匹配乙個空格。

'\'表示將下乙個字元標記為或特殊字元、或原義字元、或向後引用、或八進位制轉義符。

'\ / '表示字元「/」。

'+' 表示等同於,就是1到正無窮吧。

2、字元優先順序問題

一般都是從左到右,不同優先順序的按運算高低。

3、字元一覽表

6、推薦**

簡單使用舉例:

精通正規表示式:

RegExp正規表示式

什麼是 regexp?regexp 是正規表示式的縮寫。當您檢索某個文字時,可以使用一種模式來描述要檢索的內容。regexp 就是這種模式。簡單的模式可以是乙個單獨的字元。更複雜的模式包括了更多的字元,並可用於解析 格式檢查 替換等等。您可以規定字串中的檢索位置,以及要檢索的字元型別,等等。var ...

正規表示式 RegExp()

字串處理 split 分割字串 charat 0 提取某個字元 substring 1,5 獲取字串 search a 返回位子,否則 1 正規表示式 字串匹配工具 str.match d g 所有匹配以陣列的形式返回 風格 風格 var re new regexp a var str abcdef...

正規表示式REGEXP

正規表示式 regular expression,regexp 元字元 匹配任意單個字元 匹配指定範圍內的任意單個字元 匹配指定範圍外的任意單個字元 字元集合 digit lower upper punct space alpha alnum 匹配次數 貪婪模式 匹配其前面的字元任意次 a,b,ab...