简介
正规表达式英文全名Regular Expression,一个正规表达式通常被称为一个模式(pattern)
,为了用来描述
或着匹配
一系列符合某个句法规则的字串
建立正规表达式
使用正规表达式字面值,包含两个"/"字元之间的模式:
let re = /ab+c/;
2.呼叫RegExp物件:
let re = new RegExp("ab+c")
正则表达式中的特殊字元
字元 | 描述 | |反斜线放在非特殊符号前面,使非特殊符号不会被逐字译出,代表特殊作用。^匹配输入的开头,如果 multiline flag 被设为 true,则会匹配换行字元后。$匹配输入的结尾,如果 multiline flag 被设为 true,则会匹配换行字元。*匹配前面的子表达式零次或多次。+匹配前一字元 1 至多次,等同于 {1,}。?匹配前一字元 0 至 1 次,等同于 {0,1}。.(小数点)匹配除了换行符号之外的单一字元。(pattern)匹配 pattern并取得这一匹配的子字串。该子字串用于向后参照。(?:pattern)匹配 pattern但不取得匹配的子字串。x(?=y)若X后面有Y才会匹配,若只有X没有Y则不会匹配。x(?!y)若X后面"没有"Y才会匹配。x|y匹配X或Y。{n}规定符号确切发生的次数,n为正整数。{n,m}n为至少、m为至多,其n、m皆为正整数。[a-z]字元集合(character class)。匹配所包含的任意一个字元。[^a-z]排除型的字元範围。匹配任何不在指定範围内的任意字元。\d匹配一个数字字元。等价于[0-9]。\D匹配一个非数字字元。等价于[^0-9]。\w匹配包括底线的任何单词字元 = [A-Za-z0-9_]。\W匹配任何非单词字元 = [^A-Za-z0-9_]。\s\匹配任何空白字元,包括空格、制表符、换页符\S\匹配任何非空白字元
优先权
优先权 | 符号 | 最高\高()、(?:)、(?=)、[]中*、+、?、{n}、{n,}、{n,m}低^、$、中介字元次最低串接,即相邻字元连接在一起最低|
练习
利用RegexOne进行正规表达式的练习。

为了排除720p,在开头选取1,2,3
或是-
。

为了获取前三个数字,使用括号并且规定选取的数量。

为了获取"@"之前的数据,[\w.]获取任意单词字元
与.
,并在后面加上"*"来匹配0次或多次。

为了获取"<>"中的字元,用<
当作检测开头,而获取的东西使用括号包起来(\w+)。

获取jpg,png,gif使用|
并且使用$
表示为字尾。

使用*
找寻0~多次字首为空白字元,再将要获取的放在()中,使用.
匹配除了换行符号之外的单一字元加上*
匹配多次。
参考资料 :
正规表达式- JavaScript | MDN
正规表示式- 维基百科,自由的百科全书 - Wikipedia
RegexOne