js正则表达式2



正则表达式对象
创建方法 1. 隐式创建 
var reg=/pattern/gi    【g 表示全局, i表示在匹配的时候不区分大小写,

m 表示多行匹配】 
举例说明  gmi 的含义

代码  reg3.html

<html>

<head>
<script type="text/javascript">

var str="aklfdjakabcadkflsakfabclABCsa";  

//需求,使用正则找到 abc子串  

var reg=/abc/gim;  

//使用reg对象方法 exec  null "" 0

 //res 是一个数组 [0]->找到的子串 res[1]=> 是一个子表达式的内容

res[2]=> 

var res=""; 

//执行正则表达式 

while(res=reg.exec(str)){     

window.alert(res[0]);

  }  

</script>

</head>

<body>  </body>

</html>


reg4.html:
<script type="text/javascript">
var str="wwlkel123fklsd908wwlkk \r\nwwl"; 
//var myReg=/(\\d){3}/gi;
//new RegExp("^(Wwl)","igm"); 表示找到每行的开头的 wwl字符(不区分大小写)

var myReg=new RegExp("^(Wwl)","ig");//m就会找到两个wwl,如果没有m就会只

找到一个wwl就是头一个,通常我们使用gi

while(res=myReg.exec(str)){

window.alert(res[0]);

 }
</script>


执行正则表达式的第二个方法:
var res2=str.match(reg); //该方法比较简单,会返回得到子串的数组  

for(var i=0;i<res2.length;i++){  

window.alert(res2[i]);  }


2. 显式创建
var reg=new RegExp("pattern","选项gim"); 
3.方法
exec() 方法
test() 方法,可以检测一个字串中,是否含义满足 正则规范的子串. 返回true,

或者fasle


String对象的几个方法 
match search replace split 
代码:

<html>

<head>
<script type="text/javascript">  

var str="aklfabcdj1234akabcadkfl韩顺sakfabc5678lABCsa";  

/*var reg=/韩顺平/gi; 

if(reg.test(str)){  

window.alert("含有");

  }else{  

window.alert("没有");

  }*/  

//现在我们把abc子串转成 北京  
/* var reg=/abc/gi; 

var newStr=str.replace(reg,"北京");  

window.alert(newStr);*/  

var reg=/(\d){4}/gi; 

//按照正则表达式来分割 

var newStr=str.split(reg);

for(var i=0;i<newStr.length;i++){  

window.alert(newStr[i]);

  }   

</script> 
</head>

<body>  </body>

</html>



综合小案例:

代码:
<script type="text/javascript"> 
function abc(){  

//先得到用户输入 

var inputcon=document.getElementById('myta').innerText; //value 

//得打text1 

var text1=document.getElementById('text1').value; 

var test2=document.getElementById("text2").value; 

var reg="/"+text1+"/gi"; //abc /abc/gi  

window.alert("reg"+reg); 

//str怎么当做对象. 

var newString=inputcon.replace(eval(reg),test2);

//把新的串放入到第二个文本域 

document.getElementById("myta2").innerText=newString;

  } 
</script>

<h1>替换小测试</h1>
<textarea cols="30"  rows="7" id="myta" >

hello
</textarea>
&nbsp;&nbsp;&nbsp;&nbsp; 
<textarea cols="30"   rows="7" id="myta2"> </textarea>

<br />

<br />

请输入你要查找的字符串:<input type="text" id="text1"  /> <br /><br />

请输入你要替换成什么穿:<input type="text" id="text2" /><br />

<input type="button" value="开始替换" οnclick="abc()" />

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值