浙工大朝晖校区地址:VB如何截取指定字符?

来源:百度文库 编辑:高校问答 时间:2024/05/05 06:49:09
例如:
id=5555555
id=5555666
id=5555777
id=9999999
id=5555111
id=5553333
id=5322332

问题,如何让VB找出这个"id="一共出现了多少次?

我有一个办法,首先得到第一个ID的值,然后继续得到下一个ID值,这个时候判断前一个ID是否和当前的ID值一致,不一致则统计加一,这样就可以判断完到底出现了多少次ID,
还有,截取字符串的函数是MID(STR,BEGIN_POSITION,LENGTH)
AAA="1324511312"
BB=MID(AAA,2,4)
结果是:3245

使用REPLACE函数更简单一些

Replace函数

描述

返回一个字符串,该字符串中指定的子字符串已被替换成另一子字符串,并且替换发生的次数也是指定的。

语法

Replace(expression, find, replacewith[, start[, count[, compare]]])

Replace函数语法有如下几部分:

部分 描述
expression 必需的。字符串表达式,包含要替换的子字符串。
find 必需的。要搜索到的子字符串。
replacewith 必需的。用来替换的子字符串。
start 可选的。在表达式中子字符串搜索的开始位置。如果忽略,假定从1开始。
count 可选的。子字符串进行替换的次数。如果忽略,缺省值是 –1,它表明进行所有可能的替换。
compare 可选的。数字值,表示判别子字符串时所用的比较方式。关于其值,请参阅“设置值”部分。

设置值

compare参数的设置值如下:

常数 值 描述
vbUseCompareOption –1 使用Option Compare语句的设置值来执行比较。
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行文字比较。
vbDatabaseCompare 2 仅用于Microsoft Access。基于您的数据库的信息执行比较。

返回值

Replace的返回值如下:

如果 Replace返回值
expression长度为零 零长度字符串("")。
expression为Null 一个错误。
find长度为零 expression的复本。
replacewith长度为零 expression的复本,其中删除了所有出现的find 的字符串。
start > Len(expression) 长度为零的字符串。
count is 0 expression.的复本。

说明

Replace函数的返回值是一个字符串,但是,其中从start所指定的位置开始,到expression字符串的结尾处的一段子字符串已经发生过替换动作。并不是原字符串从头到尾的一个复制。
----------------------------------------------------
了解了目标函数中重复出现的字符,键入以下代码:
s=Repace(TargetString,"id=","")
此时S是一个被替换字符的字符
再根据两者长度变化计算
n=(len(TargetString)-len(s))/len("id=")

调试平台 Winxp xp2 vb6.0