关于HTML及UBB标记的闭合

 更新时间:2006年12月11日 00:00:00   作者:  
代码还有待完善:
复制代码 代码如下:
<script type="text/javascript"> 
 // Close HTML Tags -------------------------------------------- 
  function closeHTML(str){ 
 var arrTags=["span","font","b","u","i","h1","h2","h3","h4","h5","h6","p","li","ul","table","div"]; 

 for(var i=0;i<arrTags.length;i++){ 
 var intOpen=0; 
 var intClose=0; 

 var  re=new RegExp("\\<"+arrTags[i]+"( [^\\<\\>]+|)\\>","ig"); 
 var arrMatch=str.match(re); 
 if(arrMatch!=null) intOpen=arrMatch.length; 

 re=new RegExp("\\<\\/"+arrTags[i]+"\\>","ig"); 
 arrMatch=str.match(re); 
 if(arrMatch!=null) intClose=arrMatch.length; 

 for(var j=0;j<intOpen-intClose;j++){ 
 str+="</"+arrTags[i]+">"; 
 } 
 /*for(var j=(intOpen-intClose-1);j>=0;j--){ 
 str+="</"+arrTags[i]+">"; 
 }*/ 
 } 

 return str; 
 } 

 // Close UBB Tags -------------------------------------------- 
 function closeUBB(str){ 
 var arrTags=["code","quote","list","color","align","font","size","b"]; 

 for(var i=0;i<arrTags.length;i++){ 
 var intOpen=0; 
 var intClose=0; 

 var  re=new RegExp("\\["+arrTags[i]+"(=[^\\[\\]]+|)\\]","ig"); 
 var arrMatch=str.match(re); 
 if(arrMatch!=null) intOpen=arrMatch.length; 

 re=new RegExp("\\[\\/"+arrTags[i]+"\\]","ig"); 
 arrMatch=str.match(re); 
 if(arrMatch!=null) intClose=arrMatch.length; 

 for(var j=0;j<intOpen-intClose;j++){ 
 str+="[/"+arrTags[i]+"]"; 
 } 
 } 

 return str; 
 } 

 alert(closeHTML("正常:<div class='testBox'><ul><li><b>加粗</b><span>字体哈哈")); 
 alert(closeHTML("有错:<div class='testBox'><p><ul><li><b>加粗</b><span>字体哈哈")); 
</script> 

相关文章

  • 取图片路径的正则

    取图片路径的正则

    取图片路径的正则...
    2006-07-07
  • 正则表达式.号元字符(除了回车符\r和换行符\n)

    正则表达式.号元字符(除了回车符\r和换行符\n)

    这篇文章主要介绍了正则表达式.号元字符(除了回车符\r和换行符\n),需要的朋友可以参考下
    2016-12-12
  • 常用正则表达式之密码格式验证大全

    常用正则表达式之密码格式验证大全

    如果密码中只包含数字,那么该密码是非常简单,当然它的安全性也相对较差,下面这篇文章主要给大家介绍了关于常用正则表达式之密码格式验证大全的相关资料,需要的朋友可以参考下
    2022-02-02
  • webregexp 正则测试实现代码

    webregexp 正则测试实现代码

    WebRegExp 1.0 - 客服果果 [ 无忧版 ]对于想学习正则的朋友是个不错的在线工具,测试你正则的正确性。
    2009-03-03
  • 正则表达式模式修饰符

    正则表达式模式修饰符

    下面列出了当前可用的正则表达式修饰符。括号中提到的名字是正则表达式内部这些修饰符的名称。 模式修饰符中的空格,换行符会被忽略,其他字符会导致错误
    2016-12-12
  • web标准知识——丰富段落里的标签

    web标准知识——丰富段落里的标签

    关于段落<p></p>相信大家已经都在自己的工作中开始关注并应用了。因为那真的是非常简单的事,只要你愿意你随时都可以开始让你的页面代码更为标准化。
    2008-06-06
  • Java正则表达式实现经纬度的合法性操作

    Java正则表达式实现经纬度的合法性操作

    这篇文章主要介绍了Java正则表达式实现经纬度的合法性操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • js正则表达式讲解之index属性(RegExp对象)

    js正则表达式讲解之index属性(RegExp对象)

    index与search返回的值相同,不管是是否匹配到合适内容,如果找到合适内容则index为匹配内容其实字符的起始位置,如果没有找到则返回-1
    2012-10-10
  • C# 校验帮助类正则表达式

    C# 校验帮助类正则表达式

    很多时候我们都需要用到一些验证的方法,有时候需要用正则表达式校验数据时,需要到处找资料,今天小编把自己整理的校验帮助类分享到脚本之家平台,需要的的朋友参考下
    2017-07-07
  • JS 密码强度校验的正则表达式(简单且好用)

    JS 密码强度校验的正则表达式(简单且好用)

    最近在做一个通行证的项目,在项目中有这样的需求,注册模块中输入密码需要显示密码强度,今天小编给大家分享JS 密码强度校验的正则表达式,简单好用,需要的朋友参考下
    2017-01-01

最新评论