我喜欢以下来自html表格的文字。现在我想将它保存到db中。在保存之前,我需要解析替换为<BR />
标记的换行符。
我只需要替换<pre>
标记之外的文字,并将文字保留在<pre></pre>
标记内。
这就是我目前所拥有的:
strTxt="aaaaaaaaaaaa
bbbbbbbbbbb
<pre>
sss ssss
sss ddd
</pre>
asdafdsf
sfsfsdf
<pre>
sfdsf
sdfs
</pre>
asfasfsaf"
我希望结果是:
strTxt="aaaaaaaaaaaa<br />
bbbbbbbbbbb<br />
<pre>
sss ssss
sss ddd
</pre>
asdafdsf<br />
sfsfsdf<br />
<pre>
sfdsf
sdfs
</pre>
asfasfsaf"
答案 0 :(得分:1)
通常,在操作HTML等结构化文本时不应使用字符串操作,但<pre>
是一种特殊的 - 而不是嵌套的 - 大小写。所以你可以逃脱:
Function BrNonPre(sAll)
Dim csDelim : csDelim = "pre>" & vbCrLf
Dim aAll : aAll = Split(sAll, csDelim)
Dim i
For i = 0 To UBound(aAll) Step 2
aAll(i) = Replace(aAll(i), vbCrLf, "<br />" & vbCrLf)
Next
BrNonPre = Join(aAll, csDelim)
End Function
示例输出:
=======================
aaaaaaaaaaaa
bbbbbbbbbbb
<pre>
sss ssss
sss ddd
</pre>
asdafdsf
sfsfsdf
<pre>
sfdsf
sdfs
</pre>
asfasfsaf
----------
aaaaaaaaaaaa<br />
bbbbbbbbbbb<br />
<pre>
sss ssss
sss ddd
</pre>
asdafdsf<br />
sfsfsdf<br />
<pre>
sfdsf
sdfs
</pre>
asfasfsaf
=======================
答案 1 :(得分:0)
你可以像
那样硬编码 <%
dim strTxt
strTxt="aaaaaaaaaaaa<br />" & vbCrLf
strTxt=strTxt & "bbbbbbbbbbb" & vbCrLf
strTxt=strTxt & "<pre>" & vbCrLf
strTxt=strTxt & "sss ssss" & vbCrLf
strTxt=strTxt & "sss ddd" & vbCrLf
strTxt=strTxt & "</pre>" & vbCrLf
strTxt=strTxt & "asdafdsf<br />" & vbCrLf
strTxt=strTxt & "sfsfsdf" & vbCrLf
strTxt=strTxt & "<pre>" & vbCrLf
strTxt=strTxt & "sfdsf" & vbCrLf
strTxt=strTxt & "sdfs" & vbCrLf
strTxt=strTxt & "</pre>" & vbCrLf
strTxt=strTxt & "asfasfsaf"
Response.Write(strTxt)
%>