expresiones regulares para convertir asp page response.writes a html

Tengo esto...

Response.write "<table width=""700"" border=""0"">"

    Response.write "<tr><td width=""10%"">&nbsp;<td align=center pagetitle2strong""><br><strong>Advanced Sales Search</strong><br><br></td></tr>"

    Response.write "<tr><td width=""10%"">&nbsp;<td>"

    ShowSearchDisclaimer    

    Response.write "<table border=0><tr><td width=""10%"">&nbsp;<td>"

    ShowForm

    Response.write "</td></td></tr></table>"

    Response.write "</td></tr></table>"

Que en la fuente de vista se ve así ... solo una gran mancha.

<table width="700" border="0"><tr><td width="10%">&nbsp;</td><td align="right" ><h1>Search Sales or Transfers</h1></td></tr><tr><td width="10%">&nbsp;</td><td><table width=600 border=0><tr><td><font size=+1><b>By using this page you are agreeing to the following disclaimer.</b></font></td></tr><tr><td>&nbsp;</td></tr><tr><td>The information appearing on this website was extracted from the records of the office of the Sarasota County Property Appraiser. Our goal is to provide you with the most accurate information possible. The information maintained on this website should not be relied upon for any purposes except for those of the Property Appraiser and his staff. The Sarasota County Property Appraiser accepts no responsibility for the inappropriate use or the misinterpretation of data. No warranties, expressed or implied, are provided for the data herein. The property values relate to the last valuation date, or to preliminary values when noted. The data is subject to change.</td></tr><tr><td>&nbsp;</td></tr><tr><td>By proceeding with a property search you are stating that the notice has been read and that you understand and agree with its contents. The data contained on this site is intended for information purposes only. It is based on the best information available at the time of posting and is not warranted. The data may not reflect the most current records.</td></tr><tr><td>&nbsp;</td></tr><tr><td><a href="/es/Content/Disclaimer.asp">View Full Disclaimer Here.</a></td></tr><tr><td>&nbsp;</td></tr></table><table><form METHOD=POST NAME=frmPrice ACTION=/search/sales_search_results.asp><tr><td FormDisplayText"><b>Recorded Consideration<p class="teaser">Sale Price</p></b></td><td align=right><input TYPE=text SIZE=8 NAME=AmtFrom title="Minimum Price">&nbsp;<input TYPE=text SIZE=8 NAME=AmtTo title="Maximum Price">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><form METHOD=POST NAME=frmDate ACTION=/search/sales_search_results.asp><tr><td FormDisplayText"><b>Transaction Date</b></td><td align=right><input TYPE=text SIZE=8 NAME=DateFrom title="Minimum Date">&nbsp;<input TYPE=text SIZE=8 NAME=DateTo title="Maximum Date">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><form METHOD=POST NAME=frmInstrument ACTION=/search/sales_instrument_search_results.asp><tr><td FormDisplayText"><b>Instrument Number</b></td><td align=right><input TYPE=text SIZE=22 NAME=kw1 title="Enter Complete or Partial Instrument Number">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><form METHOD=POST NAME=frmDeedType ACTION=/search/sales_deed_type_search_results.asp><tr><td FormDisplayText"><b>Instrument Type</b></td><td align=right><input TYPE=text SIZE=22 NAME=kw1 title="Enter Exact Deed Type">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><form METHOD=POST NAME=frmGrantor ACTION=/search/sales_grantor_search_results.asp><tr><td FormDisplayText"><b>Seller/Grantor</b></td><td align=right><input TYPE=text SIZE=8 name=kw1 title="Enter part of Grantor's Name">&nbsp;<input TYPE=text SIZE=8 name=kw2 title="Enter part of Grantor's Name">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><form METHOD=POST NAME=frmSubCode ACTION=/search/sales_search_results.asp?type=code><tr><td FormDisplayText"><b>Subdivision Code</b></td><td align=right><input TYPE=text SIZE=22 name=SubCode title="Enter exact Subdivision Code">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><form METHOD=POST NAME=frmSubName ACTION=/search/sales_search_results.asp?type=name><tr><td FormDisplayText"><b>Subdivision Name</b></td><td align=right><input TYPE=text SIZE=22 name=SubName title="Enter all or part of the Subdivision Name">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><form METHOD=POST NAME=frmUseCode ACTION=/search/sales_search_results.asp><tr><td FormDisplayText"><b>Land Use Code</b></td><td align=right><input TYPE=text SIZE=8 NAME=UseFrom title="Minimum LUC">&nbsp;<input TYPE=text SIZE=8 NAME=UseTo title="Maximum LUC">&nbsp;<input type=submit value=Submit title="Click to view search results"></td></tr></form><tr><td FormDisplayText">&nbsp;</td></tr><tr><td FormDisplayText"><b>Lookup Subdivision Code</b></td><td align=right><input type=button value=Lookup title="Click to lookup code values" onclick=location.href='/search/subdivision_codes.asp?type=sales'></td></tr></form><tr><td FormDisplayText"><b>Lookup Use Code</b></td><td align=right><input type=button value=Lookup title="Click to lookup code values" onclick=location.href='/search/use_codes.asp?type=sales'></td></tr></form><tr><td FormDisplayText"><b>Lookup Instrument Type</b></td><td align=right><input type=button value=Lookup title="Click to lookup code values" onclick=location.href='/search/deed_types.asp'></td></tr></form><tr><td FormDisplayText"><b>Lookup Transaction Qual. Codes</b></td><td align=right><input type=button value=Lookup title="Click to lookup code values" onclick=location.href='/search/sales_qualification_codes.asp'></td></tr></form></table></td></tr></table>

Quiero una expresión regular que me permita cambiar rápidamente todos los response.write "<some html here>" & sometimes with variables & </more html>"

A

%>
<my html><%=somevariable%>
<%

Además, el código original no sigue ninguna forma, por lo que rara vez los valores de los atributos se incluyen correctamente entre comillas.

Quiero hacer esto porque es muy difícil depurar el "blob" y además, cuando estoy en el IDE, sería muy bueno poder ver el html renderizado. PLUS corríjame si me equivoco, pero ¿no está usando muchos de mis recursos del lado del servidor? ¿Dado que todos los comandos response.write deben procesarse en el lado del servidor? De todos modos. Realmente agradecería a cualquiera que pueda pensar en una forma de recodificar rápidamente este tipo de situación.

Aquí hay una página que ya hice a mano ...

Sub ShowCriteriaRow()

    If strPrint <> "yes" then 

        %>
        <br />
        <input type="text" id="kw1" name="kw1" size="20" value="<%=Keyword1 %>"/><%

        If (PageType <> "parcel" and PageType <> "lastname"and PageType <> "situs") Then 
            %>
        <input type="text" id="kw2" name="kw2" size="20" value="<%=Keyword2 %>"/><%
        End If

        If PageType = "STR" Then 
            %>
        <input type="text" id="kw3" name="kw3" size="20" value="<%=Keyword3 %>"/><%
        End If

        %>
        <input type="submit" name="submit" id="submit" value="Resubmit" /><%

        ShowExportButton

    Else
        Response.Write "<b>Keywords:</b> " & Keyword1 
            If Keyword2 <> "" Then Response.Write ", " & Keyword2
            If Keyword3 <> "" Then Response.Write ", " & Keyword3
        Response.Write "&nbsp; &nbsp; &nbsp; &nbsp;"
    End If  

    %>
        </td>
    </tr><%

Es un comienzo. No puedo cambiar demasiado la estructura subyacente, ya que es bastante como un espagueti.

preguntado el 16 de mayo de 11 a las 19:05

1 Respuestas

No creo que Regex sea la respuesta, ni aplicable aquí.

Personalmente, resolvería su problema con algo más parecido a lo siguiente para que tanto el script como el HTML de salida sean mucho más legibles:

tableString  = "<table width=""700"" border=""0"">" & _
                    "<tr><td width=""10%"">&nbsp;<td align=center pagetitle2strong""><br><strong>Advanced Sales Search</strong><br><br></td></tr>" & _
                        "<tr>" & _
                        "<td width=""10%"">&nbsp;<td>" & _ 
                        "{SearchDisclaimer}" & _
                        "<table border=0>" & _
                            "<tr><td width=""10%"">&nbsp;<td>" & _
                                "{ShowForm}" & _
                            "</td></td></tr>" & _
                        "</table>" & _
                        "</td></tr>" & _
                "</table>"

tableString = replace(tableString, "{SearchDisclaimer}", ShowSearchDisclaimer())
tableString = replace(tableString, "{ShowForm}", ShowForm())

Response.write(tableString)

Luego, cambie sus Subs a funciones que devuelvan HTML como una cadena como esta:

function ShowCriteriaRow()
    outputString = ""
    if strPrint <> "yes" then
        outputString = outputString & "<input id=""textbox"" name=""foo"" value=""bar"" />"
    end if

    ShowCriteriaRow = outputString
end function

contestado el 17 de mayo de 11 a las 16:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.