我有一个ASP有一个转换
的函数 到目前为止,对于& auml这么好。如果有更多的切割空间,我可以说空间为10个字符,如果用更少的空间填充& nbsp的话。 。像这样:
测试& nbsp& nbsp& nbsp& nbsp& nbsp
但如果我说“täst”就会这样做:
te& auml t& nbsp
它将& auml解释为一个char,它将其视为6个字符。那有一个聪明的方法吗?这个问题弄乱了我的设计,因为我需要正确的空间数。整个事情都进入了一个很大的选择框。
你要加一个;在任何时候结束时......我可以添加它们,因为编辑器会真正地插入它们。
答案 0 :(得分:1)
你可以在转换它们之前对字符进行计数吗?
因此,以“täst
”为例,您将确定需要6  's
。然后转换字符(te ä t
),然后附加 's
(te ä t            
)。
答案 1 :(得分:1)
有点像?不要拍你的小错误,我现在无法测试(这里没有服务器)所以它是从心脏编码的:
function CountChars ( byval s )
dim i, inAmp, Result
Result = 0
inAmp = False
for i = 1 to len(s)
select case mid(s,i,1)
case "&"
Result = Result + 1
inAmp = True
case ";"
if inAmp then inAmp = False
case else
if not inAmp then Result = Result + 1
end select
next
CountChars = Result
end function