1. function byId(id){
    2. return typeof(id)==="string"?document.getElementById(id):id;
    3. }//封装document.getElementById
    4. var text1 = byId("text1");
    5. var text2 = byId("text2");
    6. var text3 = byId("text3");
    7. var lv = document.getElementsByName("lv");
    8. var macth = byId("macth"),pattern,i,j;
    9. var modifier='';
    10. //嵌套循环
    11. //i iig iimg
    12. for(i=0 ; i<lv.length;i++){
    13. lv[i].onclick = function(){
    14. //给返回数组的每一次点击之前将之前的干扰数据清空
    15. modifier='';
    16. for(j=0 ; j<lv.length;j++){
    17. if (lv[j].checked) {
    18. modifier+=lv[j].value;
    19. }
    20. }
    21. }
    22. }
    23. macth.onclick = function(){
    24. //alert(111);
    25. if (!text1.value) {
    26. alert("请输入待匹配的文本")
    27. text1.focus();//输入框1的聚焦
    28. return;
    29. }
    30. if (!text2.value) {
    31. alert("请输入正则表达式");
    32. text2.focus();//输入框2的聚焦
    33. return;
    34. }
    35. pattern = new RegExp(text2.value,modifier);//创建正则表达式匹配正则表达式输入框的value值
    36. text3.value = pattern.exec(text1.value) || "(没有匹配)"
    37. }//3窗口所得到的值就是2窗口正则表达式匹配于1窗口输入的值的结果
    38. //如果没有 就会返回(没有匹配)字样