正则表达式总结

有问题可以留言询问

正则表达式的思维导图
https://www.processon.com/view/link/5b835f73e4b0534c9bbcb7f5

javascript代码测试

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
   
    <title>Document</title>
</head>
<body>
    
</body>
</html>

<script>
  
  /*****
   * 
   * pattern 正则表达式文本
   * flags 该参数可以是下面单个值或者几个值的任意组合:
    i               不区分大小写的匹配
    g               表示全局匹配
    m               将字符串视为多行,不管是那行都能匹配,使得多行也可匹配
    s               将字符串视为单行,将\n视为普通字符,即不是换行
    x               将模式中的空白忽略;
    A               强制从目标字符串开头匹配;
    D               如果使用$限制结尾字符,则不允许结尾有换行;
    U               只匹配最近的一个字符串;不重复匹配;

   * **************/


/*
  var reg =new RegExp("h.llo",'gi');  //匹配单个任意字符
  console.log('hEllojsHellohallo heello'.match(reg)); //完全匹配 ,如果 没加g也是匹配一次就没了
*/
var times=0;

function write(reg,str){
  document.write("<br/>字符串"+str+"<br/>使用模式"+reg+"<br/>匹配结果为"+str.match(reg)+"<br/>");
  
}

//全词匹配
var reg;
var str = "Ben Ban B_n Btn B[1]n B11n B2n B4n B+n B9n "; 
reg= new  RegExp("Ben",'gi');

write(reg,str);

reg= new  RegExp("B.n",'gi');

write(reg,str);

reg= new  RegExp("B[123]n",'gi');
write(reg,str);

reg= new  RegExp("B[1-3]n",'gi');
write(reg,str);

reg= new  RegExp("B[^1-3]n",'gi');
write(reg,str);


reg= new  RegExp("B\\[1\\]n",'gi');
write(reg,str);

reg= new  RegExp("B\\[1\\]n",'gi');
write(reg,str);

reg= new  RegExp("B[1+9]n",'gi');
write(reg,str);

reg= new  RegExp("B[1]+n",'gi');
write(reg,str);

reg= new  RegExp("B[1]+9n",'gi');
write(reg,str);

reg= new  RegExp("B[1]?[9]n",'gi');
write(reg,str);

reg= new  RegExp("B[1]*[9]?n",'gi');
write(reg,str);

reg= new  RegExp("B[1]*[9]?n",'gi');
write(reg,str);

var str2="";
str2=" hello i\'m davidway ";
reg = new RegExp("\b ");
write(reg,str2);


//javascript 不支持回溯引用?
str2="<h1>test</h1>";
reg = new RegExp("<h([1-2])>.*?</h\1>");
write(reg,str2);


str2="http://www.baidu.com ";
reg = new RegExp(".+(?=:)");
//var reg2 = new RegExp(".+:");
write(reg,str2);

str2="http://www.baidu.com \$23.24";
reg = new RegExp(".+(?=:)");
//var reg2 = new RegExp(".+:");
write(reg,str2);

reg = new RegExp("(?<=\$)[0-9]+.[0-9]+");
//var reg2 = new RegExp(".+:");
write(reg,str2);
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 作为一名攻城狮,对正则表达式一定不会很陌生,但在平时开发中有时依然会遇到这样或那样的问题。本文从基础出发,本着让初...
    村头的猫阅读 6,251评论 3 12
  • ****为什么要使用正则表达式****正则表达式通过由普通字符和特殊字符组成的文字模板完成对字符串的校验,搜索,替...
    Simple_habits阅读 4,662评论 6 21
  • 来自SegmentFault的:wupengyu 为什么要使用正则表达式 正则表达式通过由普通字符和特殊字符组成的...
    涉世之初99阅读 2,523评论 0 0
  • 正则表达式一直是我的弱项,基本都是避而远之的。这次还是咬咬牙关来看一下学习一下吧。连续看了两天,完全没有了解过正则...
    Katherine的小世界阅读 3,375评论 0 0
  • 2018年6月4日 星期一 晴 亲子日记(395)王婷爸爸 昨天女儿不小心崴了一下左脚,不敢走路了。我打电话向史玉...
    朋友是老酒阅读 6,435评论 16 106

友情链接更多精彩内容