'*************************************************************************

'**模 块 名:Filter 数组过滤函数精解示例
'**说    明:蓝凤凰设计商城 浴火凤凰-郭卫 | 蓝凤凰-魔灵 | 郭卫-icecept
'**创 建 人:浴火凤凰-郭卫
'**日    期:2015年10月11日  13:38:55
'**修 改 人:浴火凤凰-郭卫
'**日    期:
'**描    述:QQ:493405998 | 微信\旺旺:icecept
'**版    本:V1.0.0 | http://blog.sina.com.cn/icecept
'*************************************************************************
 
'●用法:传回数组 = Filter(原始数组, 要找的文本, [如果是包含则为TRUE,否则为FALSE.默认为True], [比较方式])
'●语法  Filter(InputStrings, Value[, Include[, Compare]])
 
'特别注意:Filter函数是按字符串来比较数组及搜索对象的,而且是按是否具有包含关系而不是相等关系来判断的。
 
Private Sub Command4_Click()
    Dim aa As Variant, bb() As String, prt As Variant
    aa = Array("蓝凤凰", "浴火凤凰", "魔灵", "郭卫", "icecept", "龙浩晨", "圣采儿", "周维青", "上官冰儿", "上官菲儿", "上官雪儿", "巫月寒", "东方寒月")
    bb = Filter(aa, Text1.Text, False) '显示不包含文本框输入内容的所有项目
 
    For Each prt In bb
        Debug.Print prt,
    Next
    Debug.Print
End Sub
 
Private Sub Command5_Click()
    Dim Arr
    Arr = Array(1, 2, 3, 4, 5, 6, 11, 13, 15, 11, 2, 3, 5)
    Debug.Print "原数组:" & Join(Arr, ",") & vbCrLf
    'true 显示包含1的项,False显示不包含1的项,如果省略此项默认为true
    x = Filter(Arr, 1, False)
    Debug.Print "不包含1的数组:" & Join(x, ",")
    '原数组:1,2,3,4,5,6,11,13,15,11,2,3,5
    '
    '不包含1的数组:2,3,4,5,6,2,3,5
End Sub
 
Private Sub Form_Load()
    Me.Show
    Dim x(2)
    x(0) = "kjwang"
    x(1) = "wangkj"
    x(2) = "peter"
    '第三项不写默认为True,True 显示包含有kj的项  Flase 显示不包含kj的项
    v = Filter(x, "kj")
    Print v(0), v(1)
    'vbTextCompare 忽略大小写,默认(vbTextCompare)是区分大小写
    v = Filter(x, "kj", False)
    Print v(0)
End Sub
 
Private Sub Command2_Click()
    Dim aa(10) As String
    Dim bb() As String
    Dim i As Integer
    For i = 0 To 9
        If i Mod 2 = 0 Then
            aa(i) = "aa" & Str$(i)
        Else
            aa(i) = "bb" & Str$(i)
        End If
    Next i
    'True 显示数组中包含aa的项
    bb = Filter(aa, "aa", True)
    'Flase 显示数组中不包含aa的项
    '    bb = Filter(aa, "aa", False)
    Debug.Print Join(bb, ",")
End Sub
 
Private Sub Command1_Click()
    Dim Arr
    Arr = Array(1, 2, 3, 4, 5, 6, 21, 13, 15, 12, 25, 3, 5)
    Debug.Print "原数组:" & Join(Arr, ",") & vbCrLf
    'true 显示包含2的项,False显示不包含2的项,如果省略此项默认为true
    x = Filter(Arr, 2, True)
    Debug.Print "包含2的数组:" & Join(x, ",")
    '原数组:1,2,3,4,5,6,21,13,15,12,25,3,5
    '
    '包含2的数组:2,21,12,25
End Sub
 
Private Sub Command3_Click()
    Dim b() As String
    Dim a(60) As String
    Dim i As Integer
    For i = 0 To 60
        a(i) = CStr(i)
    Next i
    Debug.Print "原数组:" & Join(a, ",") & vbCrLf
    'True,只把包含5的元素附给B数组
    b = Filter(a, 5, True)
    Debug.Print "包含5的数组:" & Join(b, ",")
 
    '    原数组:0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60
    '
    '  只包含5的数组:5,15,25,35,45,50,51,52,53,54,55,56,57,58,59
End Sub

Filter 数组过滤函数精解示例的更多相关文章

  1. Join函数 及Split函数精解示例

    '************************************************************************* '**模 块 名:Join函数 及Split函数精 ...

  2. Replace 删除、替换函数精解示例

    '************************************************************************* '**模 块 名:Replace函数精解示例 '* ...

  3. php数据过滤函数与方法示例【转载】

    1.php提交数据过滤的基本原则 1)提交变量进数据库时,我们必须使用addslashes()进行过滤,像我们的注入问题,一个addslashes()也就搞定了.其实在涉及到变量取值时,intval( ...

  4. es6 filter() 数组过滤方法总结

    1.创建一个数组,判断数组中是否存在某个值 var newarr = [ { num: , val: 'ceshi', flag: 'aa' }, { num: , val: 'ceshi2', fl ...

  5. php filter 安全过滤函数

    转自:http://www.blags.org/archives/741.html php 利用filter 扩展编写的参数处理静态类,欢迎使用.希望大家看得开心,用得放心. <?php /** ...

  6. es6 filter() 数组过滤方法总结(转载)

    1.创建一个数组,判断数组中是否存在某个值 var newarr = [ { num: 1, val: 'ceshi', flag: 'aa' }, { num: 2, val: 'ceshi2', ...

  7. 091-PHP数组过滤函数array_filter,过滤非整数

    <?php function not_int($x){ //定义过滤非整数的函数 if(is_int($x)) return TRUE; } $arr=array(1,2,'a',3,4,'c' ...

  8. 090-PHP数组过滤函数array_filter

    <?php function odd($x){ //定义过滤偶数的函数 if($x%2==1) return TRUE; } function even($x){ //定义过滤奇数的函数 if( ...

  9. C语言可变参数函数详解示例

    先看代码 printf(“hello,world!”);其参数个数为1个. printf(“a=%d,b=%s,c=%c”,a,b,c);其参数个数为4个. 如何编写可变参数函数呢?我们首先来看看pr ...

随机推荐

  1. javase-->基础知识(三)

    1.方法 普通方法:4个必要,1个可选 1):必须有返回值类型,没有返回值用void表示 2):必须有名字 3):必须有()和形参 4):必须有{}方法体 5):可选static,表示静态的方法,可以 ...

  2. Win10 UI动画

    <Button Content="Ship via Wells, Fargo & Co." HorizontalAlignment="Center" ...

  3. win7(x64)下安装cocos2d并编译安卓项目

    好吧,不为啥,就是如题. win7 x64 脑袋内存比较小,说不定明儿就忘了,今天记录一下. 没有什么经验,所有步骤基本都是百度出来的,这里边操作边记录,为了保护原创作者,这里我都附上我查找的链接. ...

  4. Oracle获取干净的建表DDL语句,不含其它存储、表空间、段属性

    早上一个同事资讯怎么获取到建表语句而且是不带存储那种SQL.Oracle自己提供了一个函数DBMS_METADATA.GET_DDL,但是获取到的建表语句含有存储.表空间.以及一些其他段的属性.如图: ...

  5. 简单爬虫,突破IP访问限制和复杂验证码,小总结

    简单爬虫,突破复杂验证码和IP访问限制 文章地址:http://www.cnblogs.com/likeli/p/4730709.html   好吧,看题目就知道我是要写一个爬虫,这个爬虫的目标网站有 ...

  6. 修复 OS X 的系统盘出现 Invalid Node Structure 问题

    昨晚我的MBP突然出现启动的时候会自动关机的问题.开机进入到 Recovery 模式之后,用 Disk Utility 检查系统盘,发现 Invalid Node Structure 错误, Disk ...

  7. android textView 总是有paddingtop怎么解决

    android的TextView即使设置wrap_content,如果打开开发者模式->显示布局边界,能看到textView还是存在paddingTop, 解决方法: android:inclu ...

  8. 【iOS [[UIApplication sharedApplication] delegate]】运用

    之前想要拿到app的窗口,我们通常的写法是: [UIApplication sharedApplication].keyWindow 这种写法之前一直也觉得是正确的,没什么问题,而且网上大多数的博客或 ...

  9. Linux学习笔记(16)-多线程

    什么是多线程?或者说,什么是线程? 按照书本上的描述,所谓线程,便是包含在进程内部的顺序执行流,是进程中实际运作的单位,也是操作系统能够进行调度的最小单位. 一个进程中可以并发多条线程,每条线程并行执 ...

  10. 转:Delphi2010新发现-类的构造和析构函数功能

    Delphi2010发布了. 虽然凭着对Delphi的热爱第一时间就安装了,但是现在可能是年纪大了,对新事物缺乏兴趣了.一直都没有仔细研究. 今天有点时间试了一下新功能. 本来C#和Delphi.NE ...