>  기사  >  백엔드 개발  >  유용한 문자열 가로채기 기능 (한자는 2자로 카운트, 영문은 1자로 카운트)

유용한 문자열 가로채기 기능 (한자는 2자로 카운트, 영문은 1자로 카운트)

WBOY
WBOY원래의
2016-07-25 09:02:501374검색
  1. '**************************************************
  2. '函数名:gotTopic
  3. '作 用:截字符串,汉字一个算两个字符,英文算一个字符
  4. '参 数:str ----原字符串
  5. ' strlen ----截取长度
  6. '返回值:截取后的字符串
  7. '**************************************************
  8. Function gotTopic(ByVal str, ByVal strlen)
  9. If str = "" Then
  10. gotTopic = ""
  11. Exit Function
  12. End If
  13. Dim l, t, c, i, strTemp
  14. str = Replace(Replace(Replace(Replace(str, " ", " "), """, Chr(34)), ">", ">"), "<", "<")
  15. l = Len(str)
  16. t = 0
  17. strTemp = str
  18. strlen = CLng(strlen)
  19. For i = 1 To l
  20. c = Abs(Asc(Mid(str, i, 1)))
  21. If c > 255 Then
  22. t = t 2
  23. Else
  24. t = t 1
  25. End If
  26. If t >= strlen Then
  27. strTemp = Left(str, i)
  28. Exit For
  29. End If
  30. Next
  31. If strTemp <> str Then
  32. strTemp = strTemp & "…"
  33. End If
  34. gotTopic = Replace(Replace(Replace(Replace(strTemp, " ", " "), Chr(34), """), ">", ">"), "<", "<")
  35. End Function
  36. ?>
复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.