当前位置:编程学习 > VB >>

Replace 用法对吗,,,出错中,,,

Private Sub Command7_Click()

    Dim f() As String
    Dim tmp() As String
    Dim r1() As String
    Dim r2() As String
    
    
    '1_以换行为分隔符,把文本框内容分隔
    tmp = Split(Text7.Text, vbCrLf)  'Split("包含要分隔的字符串数组","分隔符")
    
    '2_搜索并提取有关键字的行
    f = Filter(tmp, "GOTO/") 'Filter("包含要搜索的字符串数组","搜索关键字")
    
    r1 = Replace(f, "GOTO/", "")
    
    r2 = Replace(r1, ",", " ")
    
    '3_输出所有关键字的行,并用连接符连接
    Text8.Text = Join(r2, vbCrLf)   'Join("包含要连接的字符串数组","连接符")
    
    
End Sub
Replace没问题啊...哪里出错了? replace的操作数是字符串,不是数组
===
 r1 = Replace(f, "GOTO/", "")
==>

 r1 = Replace(f(i), "GOTO/", "")
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字符串的结尾处的一段子字符串已经发生过替换动作。并不是原字符串从头到尾的一个复制。
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,