ASP UTF-8编码下字符串截取和获取长度函数

代码如下:

'************************************
'截取文字长度函数,支持UTF-8
'输入参数:
' 1、文字内容
' 2、文字最大长度
'************************************
Public Function Cut_Title(Title,TLen)
Dim k,i,d,c
Dim iStr
Dim ForTotal

If CDbl(TLen) > 0 Then
k=0
d=StrLen(Title)
iStr=""
ForTotal = Len(Title)

For i=1 To ForTotal
c=Abs(AscW(Mid(Title,i,1)))
If c>255 Then
k=k+2
Else
k=k+1
End If

iStr=iStr&Mid(Title,i,1)

If CLng(k)>CLng(TLen) Then
iStr=iStr".."
Exit For
End If
Next

Cut_Title=iStr
Else
Cut_Title=""
End If
End Function

'*******************************
'检测文字长度函数,支持UTF-8
'输入参数:
' 1、文字内容
'*******************************
Public Function StrLen(strText)
Dim k,i,c
Dim ForTotal

k=0
ForTotal = Len(strText)

For i=1 To ForTotal
c=Abs(AscW(Mid(strText,i,1)))
If c>255 Then
k=k+2
Else
k=k+1
End If
Next
StrLen=k

End Function

(0)

相关推荐

  • asp 字符串截取函数

    asp 字符串截取函数'********************************************************* '函数:cutStr[str(strlen)] '参数:str,待处理的字符串,strlen,截取的长度 '作者:木木 '日期:2007/7/12 '描述:截取指定长度的字符串 '示例:<%=cutStr("欢迎光临阿里西西",5)%> '*************************************************

  • asp CutStrX字符串截取函数(过滤全部HTML标记)

    复制代码 代码如下: Function CutStrX(ByVal Str,ByVal StrLen) Dim l,t,c,i,r '过滤全部HTML标记 Set r=New RegExp r.Global=True r.MultiLine=True r.Pattern="(</?[A-Za-z][A-Za-z0-9]*[^>]*>)" str=r.Replace(str," ") Set r=Nothing l=Len(str) t=0 For

  • ASP UTF-8编码下字符串截取和获取长度函数

    复制代码 代码如下: '************************************ '截取文字长度函数,支持UTF-8 '输入参数: ' 1.文字内容 ' 2.文字最大长度 '************************************ Public Function Cut_Title(Title,TLen) Dim k,i,d,c Dim iStr Dim ForTotal If CDbl(TLen) > 0 Then k=0 d=StrLen(Title) iSt

  • Mysql字符串截取及获取指定字符串中的数据

    前言:本人遇到一个需求,需要在MySql的字段中截取一段字符串中的特定字符,类似于正则表达式的截取,苦于没有合适的方法,百度之后终于找到一个合适的方法:substring_index('www.sqlstudy.com.cn', '.', -2) 强烈推荐该方法获取含有特定字符的数据. substring_index(input,split,index):input为要截取的字符,split为分隔符,Index为要截取第index个分隔符左(index为正)或右(index为负)的字符串. 拿个

  • php 不同编码下的字符串长度区分

    UTF-8的中文字符串是三个字节 复制代码 代码如下: <?php //编码UTF-8 echo strlen('测试文字a测试文字'); echo '-'; echo mb_strlen('测试文字a测试文字','utf-8'); ?> 输出:25-9 GB2312的中文字符串是二个字节 复制代码 代码如下: <?php //编码GB2312 echo strlen('测试文字a测试文字'); echo '-'; echo mb_strlen('测试文字a测试文字','Gb2312')

  • php中支持多种编码的中文字符串截取函数!

    支持多种编码的中文字符串截取函数!   复制代码 代码如下: /*     * @todo 中文截取,支持gb2312,gbk,utf-8,big5      *     * @param string $str 要截取的字串     * @param int $start 截取起始位置     * @param int $length 截取长度     * @param string $charset utf-8|gb2312|gbk|big5 编码      * @param $suffix

  • 支持中文和其他编码的php截取字符串函数分享(截取中文字符串)

    简单的字符串截取方法,支持中文和其他编码,传入相对应的参数直接调用就可以了 复制代码 代码如下: /** * 字符串截取,支持中文和其他编码 * @static * @access public * @param string $str 需要转换的字符串 * @param string $start 开始位置 * @param string $length 截取长度 * @param string $charset 编码格式 * @param string $suffix 截断显示字符 * @r

  • ASP.NET 字符串截取

    复制代码 代码如下: **//// /// 截取字符串,不限制字符串长度 /// /// 待截取的字符串 /// 每行的长度,多于这个长度自动换行 /// public string CutStr(string str,int len) { string s=""; for(int i=0;i 11 { int r= i% len; int last =(str.Length/len)*len; if (i!=0 && i<=last) { if( r==0) {

  • thinkPHP内置字符串截取函数用法详解

    本文实例讲述了thinkPHP内置字符串截取函数用法.分享给大家供大家参考,具体如下: thinkphp内置了一个可以媲美smarty的模板引擎,给我们带来了很大的方便.调用函数也一样,可以和smarty一样调用自己需要的函数,而官方也内置了一些常用的函数供大家调用. 比如今天我们说的截取字符串函数,在thinkphp模板引擎里可以这样写:{$vo.title|msubstr=0,5,'utf-8′,false} 至于{$vo.title}这个大家肯定不陌生了.就说说后边的函数msubstr吧.

  • php字符串截取问题

    但是在英文和汉字混合的情况下会出现如下问题: 如果有这样一个字符串 $str="这是一个字符串"; 为了截取该串的前10个字符,使用 if(strlen($str)>10) $str=substr($str,10)."-"; 那么,echo $str的输出应该是"这是一个字-" 假设 $str="这是1个字符串": 这个串中包含了一个半角字符,同样执行: if(strlen($str)>10) $str=subst

  • php中utf-8编码下用正则表达式如何匹配汉字

    在javascript中,要判断字符串是中文是很简单的.比如: 复制代码 代码如下: var str = "php编程"; if (/^[\u4e00-\u9fa5]+$/.test(str)) { alert("该字符串全部是中文"); } else { alert("该字符串不全部是中文"); } 想当然的,在php中来判断字符串是否为中文,就会沿袭这个思路: 复制代码 代码如下: <?php $str = "php编程&qu

随机推荐