在上一篇文章已经讲了如何匹配简单的字符串,如何全局搜索,以及一些特殊字母i,g,m所表明的含义
这篇文章讲的内容有点多最好分两次读,不过不用担忧不少东西并不须要你特地记住
知道有那么一回事先用先查都OKcss
/^test/ 表示以test开头的字符 这里的^表示以...开头
/test$/ 表示以test结尾的字符
/food\$/ 匹配food$字符
module.exports = { module: { rules: [ { test: /\.css$/, use: 'css-loader' },//以.css结尾的 使用css-loader处理 { test: /\.ts$/, use: 'ts-loader' }// 以.ts结尾的 ] } };
/t?est/ 能够匹配 test 或者 est
/t+est/ 能够匹配test ttest tttest 而不能匹配est
/t*est/ 能够匹配test ttest tttest est
/a{4}/ 匹配包含连续4个a的字符串
/a{4,10}/ 匹配任何含有连续4个至10个a的字符串
/a{4,}/ 若是逗号后面不写第二个参数那么表示匹配任何含有连续4个或多于4个a的字符串
遇到连续四个a即中止搜索 var str = "aaaabbbcaadda" var newStr = str.replace(/a+/,'嘿')//"嘿bbbcaadda"
由于加了g进行全局匹配,咱们看一看有哪些字符符合条件 开头的4个a c后面的2个a d后面的a 这就是贪婪匹配遇到成串的符合条件的字符,将匹配这个’串‘ var str = "aaaabbbcaadda" var newStr = str.replace(/a+/g,'嘿')//"嘿bbbc嘿dd嘿"
若是后面在'+'后跟了'?'则表示进行非贪婪匹配,具体结果请看注释 var str = "aaaabbbcaadda" var newStr = str.replace(/a+?/g,'嘿')//"嘿嘿嘿嘿bbbc嘿嘿dd嘿"
/(ab)+/ 匹配一个或多个连续出现的字符串'ab'
var str = "abcdababef" var newStr = str.replace(/(ab)+/g,"嘿")//"嘿cd嘿ef" 请注意cd后的连续两个ab被替换成一个嘿而不是两个
/a|b/ 匹配a或b字符 /(ab)+|(cd)+/ 匹配出现一次或屡次的“ab” 或者“cd”