/*
* js正则表达式
* js的利用正则的两种方式:
* 1、test() 判断给定字符串中是否含有指定规则的字符串
* 2、exec() 在给定字符串中取出指定规则的字符串
*/
var text = "assdfdstest_10_asTest20asd";
// 第一种:/../ 只匹配第一个匹配项
var pattern = /\d+/;
// pattern.test(text); //true
pattern.exec(text); //['10']
// 第二种:/../g 匹配整个字符串的所有匹配项
var pattern = /\d+/g;
pattern.exec(text); //['10']
pattern.exec(text); //['20']
pattern.exec(text); //['null'] null之后如果继续取会继续从10开始
// 第三种:/../i 忽略大小写
var pattern = /test/gi;
pattern.exec(text); //['test']
pattern.exec(text); //['Test']
pattern.exec(text); // null
// 第四种:/../m 多行匹配,让‘^’符号在单个字符串里面可以匹配多行
// 默认就是多行匹配,但是如果加上'^'就只能匹配单行开头,使用//m可以让'^'匹配多行开头
var text1 = "JavaScript is more fun than Java and JavaBean.";
var pattern = /^Java\w*/g;
pattern.exec(text1); //['JavaScript']
pattern.exec(text1); //null
var text2 = "JavaScript is more fun than \nJava and JavaBean.";
var pattern = /^Java\w*/gm;
pattern.exec(text2); //['JavaScript']
pattern.exec(text2); //['Java']
pattern.exec(text2); //null
// 分组 方便对匹配项进行再操作
var pattern = /Java(\w*)/; //分组是在匹配结果中,再匹配括号中的匹配项
pattern.exec(text1); //['JavaScript', 'Script']