天头地脚的意思:ASP换行问题

来源:百度文库 编辑:神马品牌网 时间:2024/05/02 17:22:06
ASP如何实现换行,比如,我在输入框中按一下enter,然后显示出来的就是换行的文字?

按回车显示出来的不是换行的文字,应该这样:

文字<br>第二段文字<br>第三段文字……

这个方式会比较的不好控制有关格式的说明。另一个方法是:

<p>文字</p>
<p>第二段文字</p>
<p>第三段文字</p>
……………………

如果是表单里的换行,需要后台处理的话,在VBscript里应该表示为:“vbcrlf”
注意没有双引号。

需要多行文本区域才可以

<br></br>

回车和换行不是一个概念

代码中有的字符未原样显示,要源文件给我发邮件
iamoyjj@126.com
实现的主要技术是VB的正则表达式对象
<!-----------------------输入字符转为HTML格式并加入打印控制符实现换行控制----------------------->
<!------可先用此函数处理表单提交信息,再存入数据库.以后直接调用数据库内容即可正常显示------------>
<%
Function ubb(fString,num) '接口参数为待处理字符串和每行显示字节数

If Not IsNull(fString) Then '字符串不为空时运行函数
'--------------------------------------输入字符转为HTML格式--------------------------------------
fString = Replace(fString, CHR(38), "&") ' & 字符转换--1
fString = Replace(fString, CHR(32), " ") '空格字符转换--2
fString = Replace(fString, CHR(34), """) ' " 字符转换--3
fString = replace(fString, CHR(60), "<") ' < 字符转换--4
fString = replace(fString, CHR(62), ">") ' > 字符转换--5
'中文标点转为西文标点----------------------------------------------------------------------------
fString = Replace(fString, ",", ",")
fString = Replace(fString, "。", ".")
fString = Replace(fString, "〉", ">")
fString = Replace(fString, "〈", "<")
fString = Replace(fString, "》", ">>")
fString = Replace(fString, "《", "<<")
fString = Replace(fString, "?", "?")
fString = Replace(fString, ":", ":")
fString = Replace(fString, ";", ";")
fString = Replace(fString, "‘", "'")
fString = Replace(fString, "’", "'")
fString = Replace(fString, "“", """)
fString = Replace(fString, "”", """)
fString = Replace(fString, "、", ",")
fString = Replace(fString, "!", "!")
fString = Replace(fString, "·", ".")
fString = Replace(fString, "¥", "$")
fString = Replace(fString, "……", "......")
fString = Replace(fString, "—", "--")
fString = Replace(fString, "(", "(")
fString = Replace(fString, ")", ")")
'------------------------------------------------------------------------------------------------
fString = Replace(fString, CHR(13), "<br>") '回车字符转换--6
'1必须在2,3,4,5前,6必须在4,5后,否则替代将被破坏
'-----------------------------------加入打印控制符实现换行控制-----------------------------------
dim reg,reg2,reg3,match,matches
'定义的变量依次为 正则表达式对象,正则表达式对象,正则表达式对象,match对象,matches集合对象

set reg=New RegExp '创建匹配 转换字符串 或 中文 或 非空西文字符 的正则表达式对象
set reg2=New RegExp '创建匹配 中文 的正则表达式对象
set reg3=New RegExp '创建匹配 <br> 的正则表达式对象

reg.Pattern="&| |"|<|>|<br>|[\u4e00-\u9fa5]|\S"
'创建匹配 转换字符串 或 中文 或 非空西文字符 的正则表达式
reg2.Pattern="[\u4e00-\u9fa5]"
'创建匹配 中文 的正则表达式
reg3.Pattern="<br>"
'创建匹配 <br> 的正则表达式

reg.IgnoreCase=true '不区分大小写
reg.Global=true '搜索全部匹配

set matches=reg.execute(fString) '创建matches数据集对象
fString="" 'fString的内容已被分段存放在matches数据集对象中,这里将它清空
i=0 '初始化计数字节或认为是占位大小的变量

for each match in matches '对查找到的匹配或者说是fString的一段,按顺序逐个进行操作

if reg2.test(match.value) then 'match被判断为是一个中文匹配
if i mod num=num-1 then '差一格换行,认为中文只占一格
i=i+1
else '不是差一格换行,中文占两格
i=i+2
end if
else 'match被判断为不是一个中文匹配,只占一格
i=i+1
end if

if i mod num=0 then '累积格数达到换行格数,换行
fString=fString®.replace(match.value,match.value&"<br>")
else '累积格数未到换行格数,不换行
fString=fString&match.value
end if

if reg3.test(match.value) then 'match被判断为是一个<br>换行匹配,重新开始计数
i=0
end if

next
ubb = fString '将处理后的fString返回
End if
End Function
%>