摘要:javascript中的正規表達式作為相當重要的知識,本文将介紹正規表達式的相關知識和用法。
正規表達式(Regular Expression)是一門簡單語言的文法規範,是強大、便捷、高效的文本處理工具,它應用在一些方法中,對字元串中的資訊實作查找、替換和提取操作。
正規表達式在人們的印象中可能是一堆無法了解的字元,但就是這些符号卻實作了字元串的高效操作。javascript中的正規表達式作為相當重要的知識,本文将介紹正規表達式的相關知識和用法。
官方:正規表達式(regular expression)是一個描述字元模式的對象。 ECMAScript 的
RegExp類表示正規表達式,而String和正規表達式都定義了進行強大的【模式比對】
和【文字檢索】與【替換】的函數。
本人了解:功能和字元串類似,但是比字元串強大,更像是服務字元串的,例如表單驗證
var reg=new RegExp("hello","ig")
【注】 第一個參數為正規表達式的主體,是字元串型,第二個參數為修飾符 i 和 g
i的作用是忽略大小寫,g的作用是全局比對,在書寫的時候,它們兩個前後順序沒有差別。
var reg=new RegExp("hello","ig");
var reg=/hello/ig;
正規表達式對象隻有兩個方法
text方法: 正規表達式.text(字元串) 在字元串中比對這個正規表達式是否存在
如果比對成功傳回true,比對失敗傳回false。
exec方法:正規表達式.exec(字元串) 在字元串中比對這個正規表達式是否存在,
比對成功,傳回一個裝有字元串的數組,比對失敗傳回null
正規表達式的更多功能展現在元字元
元字元的概念:在正規表達式中有特殊含義的字元

【注】 . 比對單個的任意字元; []比對單個在範圍内的字元;[^] 比對單個不在範圍内的字元。
【注】x{n} 必須比對n個x
【注】隻需要了解前兩個,
^ 行首比對 必須以這個正則開頭
$ 行尾比對 必須以這個正則結尾
以上常見的元字元,我從别的地方擷取的表格資源,但是最重要的還是練習!!
var str="google"; var reg=/google/; reg.text(str); //true
用 . 的 形式
var str="goggle"; var reg=/go.gle/; reg.text(str);//true .對應的單個字元為任意
用[] 的形式
var str="go2gle"; var reg=/go[0-9]gle/; reg.text(str);//true []對應的字元必須符合[]中的範圍,否則為false
用x? 的形式
var str="gogle"; var str1="google"; var reg=/goo?gle/; reg.text(str);//true reg.text(str1);//true 0? 代表可以有0個O或者1個O,
用 x+ 的形式
var str="google"; var str1="googe";ar reg=/googl+e/; reg.text(str);//true reg.text(str1);//false l+ 代表至少存在一個l
用 ^ 的形式
var str="I am Li"; var str1="you are Li"; ar reg=/^you/; reg.text(str);//false reg.text(str1)//true 字元串必須以you開頭
精力有限,希望大家下去後,把是以元字元練習一遍,加深印象。
前面說到正規表達式是友善字元串的,那麼我們今天在這裡也簡單羅列一下字元串中用到正規表達式的方法
在字元串中使用正規表達式的方法:
match() : 字元串.match(正規表達式) 在字元串中比對,是否有符合正規表達式,
比對成功,傳回一個裝有子串的數組,比對失敗,傳回null
replace() : 字元串.replace(oldStr,newStr) 用newStr将oldStr替換,傳回替換成功的新字元串
【注】乍一看和正則沒有關系,但是oldStr可以用正規表達式的形式。
split() : 字元串.split(分隔符) 用分隔符将原字元串進行分割,傳回剩下的子串組成的數組。
【注】分隔符一般為字元串,也可以為正規表達式。
search(): 字元串.search(子串) 找到複合條件的子串第一次出現的位置,如果找到,傳回第一次出現子串的位置,并且為子串的首元素位置,否則傳回-1。
以上所述是小編給大家介紹的Javascript中正規表達式的使用及基本文法,希望對大家有所幫助。
點選關注,第一時間了解華為雲新鮮技術~