Eliminar tags HTML de una cadena con ASP clásico

Código ASP clásico

En ASP clásico es necesario fabricar tus propias subrutinas "a mano". E en ASP 3.0 no existe un equivalente para strip_tags() de PHP que elimina los tags HTML a la cadena que se le pase como parámetro.

Aquí tienes dos funciones que hacen esto utilizando expresiones regulares:


<%
'devuelve la cadena totalmente limpia de tags HTML
Function strip_tags(strHTML)
    Dim regEx
    Set regEx = New RegExp
    With regEx
       .Pattern = "<(.|\n)+?>"
       .IgnoreCase = true
       .Global = true
    End With
    strip_tags = regEx.replace(strHTML, "")
    Set regEx = Nothing
End Function
%>

Otra función para pasar una lista de tags HTML permitidos


  <%
  'Esta segunda funcion permite pasar
'una lista de tags admitidos
Function strip_tags(strHTML, allowedTags)
   Dim objRegExp, strOutput
   Set objRegExp = New regexp
   strOutput = strHTML
   allowedTags = "," & LCase(Replace(allowedTags, " ", "")) & ","

   objRegExp.IgnoreCase = true
   objRegExp.Global = true
   objRegExp.MultiLine = true
   objRegExp.Pattern = "<(.|\n)+?>"
   Set matches = objRegExp.execute(strHTML)
   objRegExp.Pattern = "<(/?)(\w+)[^>]*>"

   For Each match In matches
      tagName = objRegExp.Replace(match.value, "$2")
      If instr(allowedTags, "," & lcase(tagName) & ",") = 0 then
         strOutput = replace(strOutput, match.value, "")
      End If
   Next

   strip_tags = strOutput
   Set objRegExp = Nothing
End Function
  %>

Esta es otra función que retira las etiquetas HTML de cualquier cadena. Utiliza expresiones de expresiones regulares y es muy rápido.


 <%
FUNCTION stripHTML(strHTML)
  Dim objRegExp, strOutput, tempStr
  Set objRegExp = New Regexp
  objRegExp.IgnoreCase = True
  objRegExp.Global = True
  objRegExp.Pattern = "<(.|n)+?>"
  'Replace all HTML tag matches with the empty string
  strOutput = objRegExp.Replace(strHTML, "")
  'Replace all < and > with < and >
  strOutput = Replace(strOutput, "<", "<")
  strOutput = Replace(strOutput, ">", ">")
  stripHTML = strOutput 'Return the value of strOutput
  Set objRegExp = Nothing
END FUNCTION
%>

tags: asp tutor, asp clasico, etiquetas de una pagina web en html, cadenas en asp, asp cadenas, desarrollo web asp, funcion de las etiquetas html, etiquetas para paginas web html