i 大小写不敏感
g 全局匹配
m 多行匹配
[abc] 查找方括号之间的任何字符
[^abc]查找不在方括号之间的字符
[adgk]查找给定集合内的任何字符
[red|blue|green]查找任何指定的选项
n{X} 匹配包含X个n的序列的字符串
n{X,Y}匹配包含X至Y个n的序列的字符串
n{X,}匹配包含至少包含X个n的序列的字符串
n+ 匹配任何至少包含1个n的字符串
n* 匹配任何包含0个或多个n的字符串
n? 匹配任何包含0个或1个n的字符串
n$ 匹配任何结尾为n的字符串
^n 匹配任何开头为n的字符串
\w 查找单词字符
\d 查找数字
\s 查找空白字符
exec 检索字符串中指定的值,返回找到的值,并确定位置
test 检索字符串中指定的值,返回true或者false
search()
match()
replace()
split()
var str = "qwer1234asdf";
匹配str字符串中的数字:
console.log(str.match(/[0-9]+/));
var pat = new RegExp("[0-9]+");
console.log(str.match(pat));
var pat = new RegExp("[0-9]+");
console.log(pat.exec(str));
console.log(str.match(/[0-9]+/g));//g修饰符匹配所有
var str = "qwer1234asdf"
console.log(str.search("/[0-9]+/"));//返回首次匹配位置,没有则返回-1
console.log(str.search(pat))); //用创建正则对象方式搜索
console.log(pat.test(str)); //返回是否匹配 返回true或者false
var str = "23:45:67";
console.log(str.split(":")); //字符串拆分
str = "23:45,67";
console.log(str.split(/[^0-9]/)); // 正则拆分
str = "23:45,67";
console.log(str.replace(/[^0-9]/g,","));
str = “aaabbb”
console.log(str.replace(/(.*?)<\/b>/g,"$1"));
//.*是贪婪匹配 .*?是拒绝贪婪匹配
//$1 表示重复正则中第一个小括号中的内容
str = “09/05/2020”;
console.log(str.replace(/(\d{2})/(\d{2})/(\d{4})/,"$3-$1-$2"));
//其中$1,$2,$3表示重复正则中第一、第二、第三个小括号内容