/** js正则表达式* js的利用正则的两种方式:* 1、test() 判断给定字符串中是否含有指定规则的字符串* 2、exec() 在给定字符串中取出指定规则的字符串*/var text = "assdfdstest_10_asTest20asd";// 第一种:/../ 只匹配第一个匹配项var pattern = /\d+/;// pattern.test(text); ?????//truepattern.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); ?????//nullvar 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‘]
js正则表达式基础要点
原文地址:https://www.cnblogs.com/ericbai/p/9307515.html