得到固定字元位置的函數
<Script language="Javascript" Runat="Server">
/*
=======================================================================================
本程式段的功能:
給定一個字串,不管是英文還是中文,還是中英文混合的,只取前面的8個英文字母佔位的寬度。
關於該程式的說明:當最後一個字為中文,並且前面已經取得7位時,就不應該再取這個字了。再
最後位置補空格; 否則的話,總共就會佔9個英文字元的位置了。
本程式由net_lover(孟子E章)編寫,您可以任意使用本程式,但要保持本注釋。
有任何疑問請Email至: amxh@21cn.com
歡迎訪問:
http://lucky.myrice.com
http://colorweb.go.163.com
=======================================================================================
*/
function get8Length(str)
{
var tmp = 0;
var len = 0;
var okLen = 0
for(var i=0;i<8;i++)
{
if(str.charCodeAt(i)>255)
tmp += 2
else
len += 1
okLen += 1
if(tmp + len == 8)
{
return (str.substring(0,okLen));
break;
}
if(tmp + len > 8)
{
return (str.substring(0,okLen - 1) + " ");
break;
}
}
}
</Script>
<%
Dim strTest
strTest = "我是孟子E章啊!!"
Response.write get8Length(strTest) & "……<br>"
strTest = "我是net_lover!!"
Response.write get8Length(strTest) & "……<br>"
strTest = "I我a是m孟子E章啊!!"
Response.write get8Length(strTest) & "……<br>"
%>