【RegExp】正则表达式中的模式修正符
正则表达式中的模式修正符
i 不区分大小写的匹配
如:"/abc/i"可以与 abc 或 aBC 或 ABc 等匹配
g 示全局匹配
m 将字符串视为多行,不管是那行都能匹配
let str = 'bcefg5e\nabcdfe'
// 注意其中\n,换行了;abc换到了下一行;
let reg = /abc/m
// 修正符m使得多行也可匹配
s 将字符串视为单行,换行符作为普通字符
let str = prprprprprprprprprprprprprprprpr\ny
let reg = '/pr.y/s'
// 其中修正符s将\n视为普通字符,即不是换行,最后两者可以匹配;
x 将模式中的空白忽略
A 强制从目标字符串开头匹配
let reg = /abc/A
let str1 = 'abcsdfi' // 可以匹配
let str2 = 'sdsdabc' // 不可以匹配,因为str2不是以abc结尾
D 如果使用$限制结尾字符,则不允许结尾有换行
let reg = /abc$/
let str = 'adshabc\n' // 可以匹配,元子符$会忽略最后的换行\n
let reg = /abc/D
let str = 'adshabc\n' // 不可以匹配,修正符D限制其不可有换行;必需以abc结尾
U 只匹配最近的一个字符串;不重复匹配
let reg = /a.*c/
let str = 'abcabbbcabbbbbc' // 匹配abcabbbcabbbbbc
let reg = /a.*c/U
let str = 'abcabbbcabbbbbc' // 匹配最近一个字符串,abc