中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript中怎么利用正則表達式判斷匹配規則

發布時間:2021-08-02 14:55:55 來源:億速云 閱讀:449 作者:Leah 欄目:web開發

這篇文章將為大家詳細講解有關JavaScript中怎么利用正則表達式判斷匹配規則,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

字符串是編程時涉及到的最多的一種數據結構,對字符串進行操作的需求幾乎無處不在。 正則表達式是一種用來匹配字符串的強有力的武器。它的設計思想是用一種描述性的語言來給字符串定義一個規則,凡是符合規則的字符串,我們就認為它“匹配”了。 

\d可以匹配一個數字                 '00\d'可以匹配'007' ,'\d\d\d'可以匹配'010'
\w可以匹配一個字母或數字      '\w\w'可以匹配'js'
\s可以匹配一個空格(也包括Tab等空白符)
\DWS都是表示匹配與小寫字母相反的匹配關系
\數字n表示指向第n個分組捕獲到的字符串文本的一個引用,能夠再次被匹配       /(\d+)(0*)\1/可以匹配‘22300223'
.可以匹配任意字符                  'js.'可以匹配'jsp'、'jss'、'js!' 

正則表達式量詞:

*表示任意個字符(包括0個)
+表示至少一個字符
?表示0個或1個字符
{n}表示n個字符
{n,m}表示n-m個字符 

A|B可以匹配A或B       (J|j)ava(S|s)cript可以匹配'JavaScript'、'Javascript'、'javaScript'或者'javascript'

^表示行的開頭          ^\d表示必須以數字開頭

$表示行的結束          \d$表示必須以數字結束

[]表示范圍,字符類                          

[a-zA-Z\_\$][0-9a-zA-Z\_\$]*可以匹配由字母或下劃線、$開頭,后接任意個由一個數字、字母或者下劃線、$組成的字符串,也就是JavaScript允許的變量名

[a-zA-Z\_\$][0-9a-zA-Z\_\$]{0, 19}更精確地限制了變量的長度是1-20個字符(前面1個字符+后面最多19個字符)

[] 中的^ 表示排除某個字符     [^#?] 表示除了?和#的所有字符     

()表示捕獲型分組,可以將匹配的字符串進行分組,提取子串。

如果正則表達式中定義了組,就可以在RegExp對象上用exec()方法提取出子串來。

exec()匹配成功后,返回一個Array,第一個元素是正則表達式匹配到的整個字符串,后面的字符串表示匹配成功的子串。

exec()匹配失敗時返回null。

^(\d{3})-(\d{3,8})$分別定義了兩個組,可以直接從匹配的字符串中提取出區號和本地號碼:

var re = /^(\d{3})-(\d{3,8})$/;
re.exec('010-12345'); // ['010-12345', '010', '12345']
re.exec('010 12345'); // null 

(?:) 分組不想被捕獲的時候使用,可以提高程序執行速度,非捕獲型分組不會干擾捕獲型分組編號。

用正則表達式切分字符串比用固定的字符更靈活

'a,b;; c d'.split(/[\s\,\;]+/); // ['a', 'b', 'c', 'd']  

RegExp對象的test()方法用于測試給定的字符串是否符合條件。

var re = /^\d{3}\-\d{3,8}$/;
re.test('010-12345'); // true
re.test('010-1234x'); // false

需要特別指出的是,正則匹配默認是貪婪匹配,也就是匹配盡可能多的字符。

var re = /^(\d+)(0*)$/;
re.exec('102300'); // ['102300', '102300', '']

由于\d+采用貪婪匹配,直接把后面的0全部匹配了,結果0*只能匹配空字符串了。

加個?就可以讓\d+采用非貪婪匹配:

var re = /^(\d+?)(0*)$/;
re.exec('102300'); // ['102300', '1023', '00']

特殊標志

g標志 ,表示全局匹配

i標志,表示忽略大小寫

m標志,表示執行多行匹配 

需要使用轉義符' \ '的15個特殊字符

/ \ [ ] ( ) { } ? + * | . ^ $

關于JavaScript中怎么利用正則表達式判斷匹配規則就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平和县| 四会市| 米泉市| 新营市| 盈江县| 双牌县| 应用必备| 吉林省| 宜丰县| 莱西市| 库尔勒市| 岳西县| 北川| 资源县| 拉萨市| 新河县| 盱眙县| 寿宁县| 安化县| 天祝| 威信县| 阿巴嘎旗| 马尔康县| 交口县| 巴中市| 桑植县| 东源县| 京山县| 怀远县| 交城县| 平凉市| 吉林市| 凌云县| 新丰县| 普兰店市| 海口市| 西峡县| 福鼎市| 永宁县| 桐柏县| 珲春市|