首页 相关文章 2个不错的通配符比较函数

2个不错的通配符比较函数

近日在和朋友讨论 MaskMatch 时偶得2个不错的算法。
  函数1 只支持'*','?'模糊匹配。速度比采用递归算法的快近2倍,比TMask方法快很多。
  函数2 完全支持正规表达式。速度于之前的相同。(不会正规表达式的朋友慎用)

  
  
  // ===========================
  // Funtion 1
  // ===========================
  
  // Check if the string can match the wildcard. It can be used for unicode strings as well!
  // C: 2004-07-24 | M: 2004-07-24
  function MaskMatch(co...[ 查看全文 ]

2016-02-19 标签:
  • 标签:Delphi
      近日在和朋友讨论 MaskMatch 时偶得2个不错的算法。 函数1 只支持'*','?'模糊匹配。速度比采用递归算法的快近2倍,比TMask方法快很多。 函数2 完全支持正规表达式。速度于之前的相同。(不会正规表达式的朋友慎用) // =========================== // Function 1 // =========================== // Check if the string can match the wildcard. It can be use...[ 查看全文 ]
  • 标签:ASP
    <% Dim myarr For i = 0 To 100 Randomize no = Int((1000-1+1)*Rnd+1) For j = 0 To i If no < myarr(j) And no < "" Then j = j + 1 Else Exit For End If myarr(i) = no Next If i = 21 Then Exit For End If Next %[ 查看全文 ]
  • 标签:ASP
           '******************************    '名称: ChkInvStr    '参数:Str    '返回值:True/False    '创建时间:2005年5月2日    '作用:检查参数是否有非法字符    '******************************    Public Function ChkInvStr(Str)    Rem 定义需要过滤得非法字符  &nbs...[ 查看全文 ]
  • 标签:Web开发
    代码如下: function map(a,f){f(a);} function getRand(a,b) {     if(a)     {         b=b?b:0;         return Math.floor(Math.random()*a+b);     }else     {       &nbs...[ 查看全文 ]
  • 标签:Web开发
    /* ------------------------------------------------------------------------------- 文件名称:check.js 说明:JavaScript脚本,用于检查网页提交表单的输入数据 版本:1.0 */ /* 用途:校验ip地址的格式 输入:strIP:ip地址 返回:如果通过验证返回true,否则返回false; */ function isIP(strIP) {  if (isNull(strIP)) return false; var re=/^(\d+)\...[ 查看全文 ]
  • 标签:Web开发
    function JsUBB(str)   {   var re=//[i/](.[^/[]*)/[//i/]/gi;   str=str.replace(re,"i$1/i"); //斜体字   re=//[b/](.[^/[]*)/[//b/]/gi;   str=str.replace(re,"b$1/b"); //粗体字   re=//[u/](.[^/[]*)/[//u/]/gi;   str=str.replace(re,"u$1/u"); //下划线   re=//[color=(.[^/[]*...[ 查看全文 ]
  • 标签:ASP
      最近迷恋上作网站了,使用asp开发,发现asp有好多的漏洞,而且在一个网站中有好多的代码是重复使用的,所以就查询了一些资料发现在asp中可以使用类的思想,所以就写了这个类,写的不好,但是比较实用。 <meta http-equiv="Content-Type" content="text/html; charset=gb2312" <% Const Btn_First="<font face='webdings'9</font"  '定义第一页按钮显示样式 Const Btn_Prev="<f...[ 查看全文 ]
  • 标签:ASP
             最近迷恋上作网站了,使用asp开发,发现asp有好多的漏洞,而且在一个网站中有好多的代码是重复使用的,所以就查询了一些资料发现在asp中可以使用类的思想,所以就写了这个类,写的不好,但是比较实用。      <meta http-equiv="Content-Type" content="text/html; charset=gb2312">   <%   Const Bt...[ 查看全文 ]
  • 标签:Web开发
    js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 1、  传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断。                            例如:...[ 查看全文 ]
  • 标签:Web开发
    SCA Ad Image Process [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] [ 查看全文 ]
  • 标签:Web开发
    //Examine the browser  检测浏览器的函数 var userAgent = navigator.userAgent.toLowerCase(); var is_opera  = (userAgent.indexOf('opera') != -1); var is_saf    = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == 'Apple Computer, Inc.')...[ 查看全文 ]
  • 标签:Web开发
    适合阅读范围:对JavaScript一无所知~离精通只差一步之遥的人 基础知识:HTML JavaScript就这么回事1:基础知识  1 创建脚本块 1: script language=”JavaScript” 2: JavaScript code goes here 3: /script  2 隐藏脚本代码 1: script language=”JavaScript” 2: !-- 3: document.write(“Hello”); 4:&nb...[ 查看全文 ]
  • 标签:Web开发
    拖动效果函数演示 by Longbill.cn body { font-size:12px; color:#333333; border : 0px solid blue; } div { position : absolute; background-color : #c3d9ff; margin : 0px; padding : 5px; border : 0px; width : 100px; height:100px; } div1:我可以被拖动 div2:来拖我呀 div3:我随便你拖 div4:我可以随窗口滑动,把我拖到最下面,然后滚动网页看看 作者: Long...[ 查看全文 ]
  • 标签:Web开发
    //-------- // 检查当前浏览器是否为Netscape //-------- function isNetscape(){     app=navigator.appName.substring(0,1);     if (app=='N') return true;     else {return false;} } //-------- // 保存当前Form表单(仅适用于IE浏览器) //-------- function formSaveCheck(f...[ 查看全文 ]
  • 标签:Web开发
    看js事件时看到了resizeTo和moveTo两个函数及window.screen.height/window.screen.width等几个属性突然想到的这个效果,花了偶一点功夫终于写出来了,感觉挺好玩,呵呵。。。 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行][ 查看全文 ]
  • 根据,MySQL 会自动将数字转化为字符串,反之亦然。 mysql SELECT 1+'1'; - 2 mysql SELECT CONCAT(2,' test'); - '2 test' 若想要将数字明确地转化为字符串,可使用 CAST()或 CONCAT()函数: mysql SELECT 38.8, CAST(38.8 AS CHAR); - 38.8, '38.8' mysql SELECT 38.8, CONCAT(38.8); - 38.8, '38.8' CAST() 比较可取。 ...[ 查看全文 ]
  • ACCESS库的通配符为: * 与任何个数的字符匹配。 ? 与任何单个字母的字符匹配。 要进行模糊查找,则必须使用通配符,ACCESS库的通配符和SQL SERVER的通配符不一样。 在SQL Server中的通配符为: % 与任何个数的字符匹配 - 与单个字符匹配 在C#中通过ACCESS数据库进行模糊查找,即用 Like 函数 Like '%ddd%' 字段中包含了ddd的所有记录。而非*。这个和C#中通过SQL SERVER 数据库进行模...[ 查看全文 ]
  • 本文讲述了Oracle-Decode()函数和CASE语句的比较。 首先,举2个简单的例子,简单对比一下这2者的区别。 1.CASE语句: SELECT CASE SIGN(5 - 5) WHEN 1 THEN 'Is Positive' WHEN -1 THEN 'Is Negative' ELSE 'Is Zero' END FROM DUAL; 后台实现: if (SIGN(5 – 5) = 1) { 'Is Positive'; } else if (SIGN(5 – 5) = 2 ) { 'Is Negative'; }else { ‘Is Zero’ }...[ 查看全文 ]
  •   可是在一个页面中,我们可能会遇到有多个事件要激活多个函数,每个事件都要写一遍那样的代码,显然不是好主意。聪明的读者可能已经想到,应该写成一个函数activeMore(),哪个事件要激活多个函数的,直接就用activeMore()就行。 但是在上一部分中我们把事件的toString()当作JavaScript脚步本运行,实际上是运行一段函数代码,如果写成一个函数时还是用这个方法,即为函数中嵌套函数,将会出...[ 查看全文 ]
  • 标签:Web开发
    六、dataType 含义:设定或读取结点的数据类型 语法:设定结点的数据类型 object.dataType=obj value 读取结点的数据类型 obj value =object.dataType 参数:object ── 结点对象 示例:读取当前结点的数据类型 dtType=this.dataType 七、depth 含义:指定结点出现在文档树上的深度,即该结点位于文档第几层,顶层结点位于 第一层,...[ 查看全文 ]
手机页面 收藏网站 回到头部