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

'**模 块 名: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. rem、px、em之间的区别以及网页响应式设计写法

    个人收藏用,转载自:http://www.w3cplus.com/css3/define-font-size-with-css3-rem 在Web中使用什么单位来定义页面的字体大小,至今天为止都还在激 ...

  2. visual studio 2015连接到MySql相关问题

    vs中使用服务器资源管理器连接到MySQL没有成功.按照网上提供的解决方法,相关插件已经安装: 1.控制面板中,MySQL Connector Net 6.9.9已经安装(原安装版本为6.9.8,后升 ...

  3. C#中的扩展方法

    扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型. 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用. 以上是msdn官网对扩展方 ...

  4. python学习笔记(5)--迭代器,生成器,装饰器,常用模块,序列化

    生成器 在Python中,一边循环一边计算的机制,称为生成器:generator. 如: >>> g = (x * x for xin range(10)) >>> ...

  5. 11.Object方法

    综述 Object是Java中所有类的父类,对它的学习十分的重要, Object的函数除了final方法,基本上都是被设计为要被覆盖的(Override),这节我们就一起来学习这些函数. 1.equa ...

  6. Oracle sql连接

    inner-join                    left-outer-join                 right-outer-join                 full- ...

  7. ASP.NET中GridView数据导出到Excel

    /// <summary> /// 导出按钮 /// </summary> /// <param name="sender"></para ...

  8. 如何用Qt做SolidWorks二次开发

    这个问题困扰了我2年了,之前找到的教程都是MFC的,ATL导入向导或是通过导入类型库的方式来调用控件,我一直都搞不明白. 最近学习了ActiveQT以及通过ActiveQT控制EXCEL.Word.P ...

  9. 在CentOS下利用Python+selenium获取腾讯首页的今日话题。

    1.安装依赖包 yum install wget firefox gcc zlib zlib-devel Xvfb 2.安装setuptools 官网地址:https://pypi.python.or ...

  10. Leetcode Palindrome Linked List

    Given a singly linked list, determine if it is a palindrome. Follow up:Could you do it in O(n) time ...