ASP文字列インターセプト関数
'************************************************ * *********
'関数:cutStr[str(strlen)]
'パラメータ: str、処理対象の文字列、strlen、インターセプトされた長さ
作者:むむ
'日付: 2007/7/12
'説明: 指定された長さの文字列をインターセプトします
'例: <%=cutStr("Alixixi へようこそ",5)%>
'************************************************ * *********
関数カットStr(str,strlen)
str = "" の場合
CutStr = "cutStr 関数例外: 文字列が空です"
終了関数
終了の場合
'-----------ソース長チェック
strlen = "" の場合
CutStr = "cutStr 関数例外: 長さが指定されていません"
終了関数
終了の場合
CInt(strlen) = 0 の場合
CutStr = "cutStr 関数の例外: 長さが 0"
終了関数
終了の場合
'----------ソース文字長の検出
薄暗い l、t、c、i
l=レン(文字列)
t=0
'----------文字をインターセプトするループ
i=1 ~ l の場合
c=Abs(Asc(Mid(str,i,1)))
'-----漢字かどうかを判定します
c>255の場合
t=t+2
それ以外
t=t+1
endIf
'-----指定された長さに達したかどうかを判断します
t>=strlen の場合
CutStr=left(str,i)&".."
のために出る
それ以外
カット強度=str
終了する場合
次
CutStr=replace(cutStr,chr(10),"")
終了関数
''*********************************************** *********
'関数: strlen[str]
'パラメータ: str、処理対象の文字列
作者:むむ
'日付: 2007/7/12
'説明: 文字列の長さを決定します。漢字の長さは 2 です。
'例: <%=strlen("Alixixi へようこそ")%>
'************************************************ * *********
関数 strlen(str)
薄暗い p_len
p_len=0
strlen=0
トリム(str)<>""の場合、
p_len=len(トリム(str))
xx=1 から p_len まで
if asc(mid(str,xx,1))<0 then
strlen=int(strlen) + 2
それ以外
strlen=int(strlen) + 1
終了する場合
次
終了する場合
終了機能
左側の n 文字をインターセプトします '****************************************** * ****************
'関数: LeftTrue(str,n)
'パラメータ: str、処理対象の文字列、n、インターセプトされた長さ
作者:むむ
'日付: 2007/7/12
'説明: 左側にn文字を表示(漢字自動認識)機能
'例: <%=LeftTrue("Alixixi へようこそ",6)%>
'************************************************ * *********
関数 LeftTrue(str,n)
len(str)<=n/2 の場合
LeftTrue=str
それ以外
ディム TStr
薄暗い l、t、c
ディム・アイ
l=レン(文字列)
t=l
TStr=""
t=0
i=1 ~ l の場合
c=asc(mid(str,i,1))
c<0 の場合、c=c+65536
c>255 の場合
t=t+2
それ以外
t=t+1
終了の場合
t>n の場合は終了します
TStr=TStr&(mid(str,i,1))
次
LeftTrue = TStr
終了の場合
終了機能
興味がありそうな記事: