哪位高人帮看看,
为什么这个表达搞不懂用innerHTML得到的字符串
多谢
<html>
<head>
<script language="javascript" type="text/javascript" src="demo.js" >https:1111 https: 第0次得到这里</script>
<script type="text/javascript">var tStr = "https:2222";
function getElement(){
var reg = /^https?:\d*/g;
var tes = "https:234324, http:";
var scr =document.getElementsByTagName("SCRIPT");
for(var i=0;i<scr.length;i++){
window.alert(scr[i].innerHTML);
//这句可以得到
//window.alert(reg.exec(tStr+scr[i].innerHTML));
//这句为什么得到null
window.alert(reg.exec(scr[i].innerHTML));}
}</script>
</head>
<body><div style="display:block" id=login>
<form id=loginform onsubmit=getElement(); method=post name=loginform>
<div>
<br/><br/>
<input type="submit" value="测试" class="btn" id="login_btn" />
</div>
</form>
</div><br/><br/>
为什么正则无法解析innerHTML获取的字符串?</body>
</html>
为什么这个表达搞不懂用innerHTML得到的字符串
多谢
<html>
<head>
<script language="javascript" type="text/javascript" src="demo.js" >https:1111 https: 第0次得到这里</script>
<script type="text/javascript">var tStr = "https:2222";
function getElement(){
var reg = /^https?:\d*/g;
var tes = "https:234324, http:";
var scr =document.getElementsByTagName("SCRIPT");
for(var i=0;i<scr.length;i++){
window.alert(scr[i].innerHTML);
//这句可以得到
//window.alert(reg.exec(tStr+scr[i].innerHTML));
//这句为什么得到null
window.alert(reg.exec(scr[i].innerHTML));}
}</script>
</head>
<body><div style="display:block" id=login>
<form id=loginform onsubmit=getElement(); method=post name=loginform>
<div>
<br/><br/>
<input type="submit" value="测试" class="btn" id="login_btn" />
</div>
</form>
</div><br/><br/>
为什么正则无法解析innerHTML获取的字符串?</body>
</html>
var reg = /^https?:\d*/g;
既然是要匹配多个的话把开始标记符^去掉吧(不然只能匹配到第一个): var reg = /https?:\d*/g;
========
var reg = /https?:\d*/gi;
innerHTML拿到的string是"\r\nhttps:1111 https: 第0次得到这里"
多谢