当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 相信字符串处理中用的最多的就是 Pos 函数了。
 

 

 ·用delphi压缩access数据库     »显示摘要«
    摘要:uses dao97,dao2000; procedure compactmdbdatabase(srcdbname,dstdbname,oldpwd,newpwd:string;baccess97:boolean=true);var idbengine:_dbengine;begin if oldpwd <> then oldpwd := ;pwd=+oldpwd; if newp......
    摘要:接下来要动手来做一个组件了,我想了一个计数器组件,功能方面是比较简单的,但这不是本章的重点,这一章的重点是说明一个组件的制作全过程。在其中可以学到很多组件制作的技巧,当然这些也是我从书上学得的。好了,开始制作吧: 这是一个可以计数的组件,为了简单,我以秒为单位,当开始时,他就从0开始增加,并显示出来,到3600时,它又回到0,如此循环。当然它也可以停止,暂停,继续。另外,他还有一个时间事件,即可以......


比FastPos还要快Pos函数

相信字符串处理中用的最多的就是 pos 函数了.但是如果要搜索一个字符串中第二次或者第三次出现的子字符串的,就没有现成的 delphi 标准函数了.所以我就自己写了一个.同时与网上比较流行的 faststrings.smartpos() 与 jvcl.npos() 做了比较,速度更快,而且兼容 unicode(widestring/widechar).

【程序编程相关:Application Server 的

【推荐阅读:配置 DB2 V8.1 来编译存储过程

注:代码可能有人会觉得不太舒服,但作为最常用的字符串函数,这样的优化我觉得还是值得的. 【扩展信息:在 CMP bean 中使用关系型存储过

function quickpos(const substr, s: widestring; matchesindex: integer = 1): integer;

function quickposback(const substr, s: widestring; matchesreverseindex: integer = 1): integer;

代码如下:

// compares a substring with a string. *for inline use"

// c: 2004-07-05 | m: 2004-07-05

function _inlinecomparetext(const substr, s: widestring; startindex: integer = 1; lenofsubstr: integer = -1; lenofs: integer = -1): boolean;

var

? i: integer;

begin

? if lenofsubstr = -1 then lenofsubstr := length(substr);

? if lenofs = -1 then lenofs := length(s);

? if lenofsubstr > lenofs then

? begin

? ? result := false;

? ? exit;

? end;

? for i := 1 to lenofsubstr do

? ? if substr[i] s[i + startindex - 1] then


...   下一页
 ·pascal精要笔记     »显示摘要«
    摘要:pascal精要笔记 pascal语言的大小写不敏感特性有一个例外:控件包中的register 过程必须以大写字母r开始,因为需要与c++builder 兼容。 ,编译器不编译代码中的空格、空行和tab键空格,这些元素通称为空白,它们只用来提高代码的可读性,不影响编译过程。(也就是说: = 这样的写法没有问题,我原来还以为由问题那!) 记住要用代码模板(方便开发)快捷键:ctrl+j ab......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE