| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1243 人关注过本帖
标题:怎么判断两个字符串的 长度是一致的
只看楼主 加入收藏
zfjyyzycl
Rank: 2
等 级:论坛游民
帖 子:239
专家分:10
注 册:2006-4-15
结帖率:28.57%
收藏
 问题点数:0 回复次数:5 
怎么判断两个字符串的 长度是一致的

我想在报表里打印数据库的字段,但是打印输出后的长度不一致,非常的难看,
想取得变量的长度后,用空格进行调整,但是变量的长度,却怎么也调不准

比如说“编程论坛”和“bianchen”这两个字符串
用 len 函数 字符串:“编程论坛”的长度是4 而字符串:“bianchen”是8
用 lenB 函数 字符串:“编程论坛”的长度是8 而字符串:“bianchen”是16
请问用什么方式才能 判断 字符串:“编程论坛”和字符串:“bianchen”的长度一致的

请 指点迷津 谢谢

搜索更多相关主题的帖子: 字符 长度 判断 
2007-04-30 15:23
huangwy
Rank: 1
等 级:新手上路
威 望:2
帖 子:297
专家分:0
注 册:2007-3-23
收藏
得分:0 

比如你要一个iCun位的字串(前面包括空格,后面是你要打印的数据)
你可以这样:
'iCun是你要的串长
'sStr是你要打印的字串
'返回值是处理过的字串
function myStrCpt(sStr$,iCun%) as string
dim subStr$
substr=string(iCun," ")
mystrcpt=left(subStr,icun-len(trim(sstr))) & trim(sStr)
end function

2007-04-30 15:46
huangwy
Rank: 1
等 级:新手上路
威 望:2
帖 子:297
专家分:0
注 册:2007-3-23
收藏
得分:0 

看错了,你要的不是这个问题

2007-04-30 15:48
huangwy
Rank: 1
等 级:新手上路
威 望:2
帖 子:297
专家分:0
注 册:2007-3-23
收藏
得分:0 
你要把他们转换成Asc字符串
用strConv(vbNarrow)把字符串转换成单字节的字串
但是不能用于打印,只用于计算空格数
然后,补上空格就行了
2007-04-30 15:54
Kendy123456
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:62
帖 子:2720
专家分:0
注 册:2007-1-3
收藏
得分:0 
你这个问题应该概括为 怎么判断当前字符是英文还是汉字 如果是汉字则算2字节

一个一个字用ascii码判断 ascii码落在[0,127]内的为非汉字 落在之外的为汉字

2007-04-30 16:08
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
If LenB(StrConv("编程论坛", vbFromUnicode))=LenB(StrConv("bianchen", vbFromUnicode)) Then Msgbox "长度一致"

如果你想让你一个字符串的打印长度始终为20可以这样做
Dim I as Long,Str1 as String

Str1="我爱VB"
I=LenB(StrConv(Str1, vbFromUnicode))
If I<20 then Str1 = Space(20 - I) & Str1 '这是靠右,居中或是靠左自己根据这个思想稍为改改就行了。这里没有处理如果字符串长度大于20的情况。

[此贴子已经被作者于2007-5-1 11:28:04编辑过]


VB QQ群:47715789
2007-05-01 11:21
快速回复:怎么判断两个字符串的 长度是一致的
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016118 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved