服务器之家

服务器之家 > 正文

js正则表达式处理超文本流

时间:2020-07-16 16:16     来源/作者:正则之家
  1. <textarea id=html_string style="width=100%" rows=8>  
  2. <input  
  3. type='text' value = 's>om  
  4. " ething' name=names asdf=asdf>  
  5. </input>><input value=a>a name=aa><input name=bb value=bb>  
  6. <input name=cc value=cc>  
  7. </textarea>  
  8.  
  9. <script>  
  10. var re = new Array()  
  11. re[re.length] = Array("单标记   ", /<(\w+)[^"']*?((["'])?[^\3]*?\3[^"']*?)+>/ig)  
  12. re[re.length] = Array("属性(带引号)", /\w+\s*=\s*(["'])[^\1]*?\1/ig)  
  13. re[re.length] = Array("属性(没引号)", /\w+\s*=\s*\w+/gi)  
  14. //alert(re.exec(ss))  
  15.  
  16. for (var i=0; i<re.length; i++)  
  17. {  
  18. document.write("<input type=radio name=re value="+i+">"+re[i][0]+" <input id=reValue size=100 type=text> ")  
  19. document.write("<button onclick='re["+i+"][1]=document.all.reValue["+i+"].value'>保存</button>")  
  20. document.write("<button onclick='document.all.reValue["+i+"].value=re["+i+"][1]'>恢复</button>")  
  21. document.all.reValue.length ? document.all.reValue[document.all.reValue.length-1].value = re[i][1] : document.all.reValue.value = re[i][1]  
  22. }  
  23.  
  24. document.all.re[0].checked = true  
  25.  
  26. function matchTest()  
  27. {  
  28. var ss = html_string.innerText  
  29. var re  
  30. for (var i=0; i<document.all.re.length; i++) if(document.all.re[i].checked) break  
  31. re = eval(document.all.reValue[i].value)  
  32. rx = re.exec(ss)  
  33. testArea.innerHTML = ""  
  34. for (var i=1; i<9; i++) testArea.innerHTML += " RegExp$"+i+"="+eval("RegExp.$"+i)+" "  
  35. rv = ss.match(re)  
  36. for (var i=0; rv && i<rv.length; i++)  
  37. {  
  38. testArea.innerHTML += "<xmp style='background:#EEEEEE; padding:5px'>"+rv[i]+"</xmp>"  
  39. }  
  40. }  
  41. </script>  
  42.  
  43.   
  44.  
  45. <button onclick=matchTest()>测试</button>  
  46.  
  47. <div id=testArea></div>  

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
返回顶部