ASP를 사용하시는 분들이면 언제나 문자열에 부딪치게 되죠 ㅎㅎ
그런데 웹엔 왠지 내용이 별로 인것 같아서
(저만의 베스트^^;;)깔꼼 한거 올립니다^^
써보시면 아실꺼라 생각하고 주석처리는 안하구
긴 것 부터 나열 하겠습니다^---^
'간단한 한글 문자열 자르기
subject = "아1'아'아'아'아아아아아아아아아아아아"
MaxLen = 10
IF Len(subject) > MaxLen Then
sumByte = 1
title_one = ""
result = ""
a = 1
Do Until sumByte > MaxLen
title_one = MID(subject, a, 1)
If 0 =< Asc(title_one) Then
sumByte = sumByte + 1
Else
sumByte = sumByte + 2
End IF
If sumByte > MaxLen Then
result = result &"..."
Else
result = result + title_one
End IF
a = a + 1
Loop
subject = Replace(result, "''", "'")
subject = Replace(subject, "<", "<")
subject = Replace(subject, ">", ">")
Else
subject = Replace(subject, "''", "'")
subject = Replace(subject, "<", "<")
subject = Replace(subject, ">", ">")
End IF
Response.write subject
Response.end
'깔끔 펑션 버전
Function StringCut(strtxt, MaxLen)
Dim i, strLen, VarResult, Intcount, nVal
strLen = Len(Trim(strtxt))
If strtxt = "" Then
VarResult = ""
Else
For i = 1 To strLen
If i = 1 Then
nVal = Asc(Left(Trim(strtxt), 1))
Else
nVal = Asc(Mid(Trim(strtxt), i, 1))
End If
If 0 =< nVal Then
Intcount = Intcount + 2
Else
Intcount = Intcount + 1
End If
If MaxLen < Intcount Then
VarResult = VarResult + "..."
Exit For
End If
VarResult = VarResult + Mid(Trim(strtxt), i, 1)
Next
End If
VarResult = Replace(VarResult, "''", "'")
VarResult = Replace(VarResult, "<", "<")
VarResult = Replace(VarResult, ">", ">")
StringCut = VarResult
End Function
'완전 간단 버전
Function KoreanStringCut(strString)
Dim intPos, strChar, intLen
intLen = 0
' 한문자씩 비교한다.
For intPos = 1 To Len( strString )
strChar = Mid( strString, intPos, 1)
' 한글일 경우
If Asc( strChar ) < 0 Then
intLen = intLen + 2
Else
intLen = intLen + 1
End If
Next
KoreanStringCut = intLen
End Function
'asp' 카테고리의 다른 글
VB 함수 (3) | 2007.05.03 |
---|---|
ASP에서 Class 이용하기 (2) | 2007.05.03 |
프로시저 데이터 타입 정리 (0) | 2007.05.03 |
ASP 오류 번호 정리 (0) | 2007.05.03 |
SerVariables컬렉션 사용법 (1) | 2007.05.03 |