注册 登陆
浏览模式: 标准 | 列表 Tag: 查询

快速查询PosEx与PosRightEx(转载)

快速查询posexposrightex

http://blog.csdn.net/senfore 

1.PosEx

功能说明:实现正向增强查询,跟FastCodePosEx功能相同,不依赖fastCode;

OffSet为偏移位置,通过测试,速度要比FastCodePosEx稍慢。

function PosEx(const SubStr,S:AnsiString;const Offset:Cardinal=1):Integer;
var
  iPos: Integer;
  i, j,LenS,LenSub: Integer;
  PCharS, PCharSub: PChar;
begin
  Result := 0;
  LenS:=Length(S);
  lenSub := length(Substr);
  if (LenS=0) Or (lenSub=0) then Exit;
  if (LenS-lenSub)<Offset then  Exit;

  PCharS := PChar(s);
  PCharSub := PChar(Substr);

  for I := Offset-1 to LenS-1 do
  begin
    if lens-I<LenSub then Exit;
    for j := 0 to lenSub - 1 do
    if PCharS[i + j] <> PCharSub[j] then
      break
    else if J=LenSub-1 then
    begin
      Result:=I+1;
      Exit;
    end;     
  end;
end;

2.PosRightEx

功能说明:实现反向增强查询;

OffSet为偏移位置,通过指定Offset,只查询Offset以前位置(包括Offset所在位置字符)。查询方法为从右向左最比。与PosEx效率相同。

function PosRightEx(const SubStr,S:AnsiString;const Offset:Cardinal=MaxInt):Integer;
var
  iPos: Integer;
  i, j,Len,LenS,LenSub: Integer;
  PCharS, PCharSub: PChar;
begin
  Result := 0;
  LenS:=Length(S);
  lenSub := length(Substr);
  if (LenS=0) Or (lenSub=0) then Exit;
  if Offset<LenSub then Exit;

  PCharS := PChar(s);
  PCharSub := PChar(Substr);

  Len:=Offset;
  if Len>LenS then
     Len:=LenS;

  for I := Len-1 downto 0 do
  begin
    if I<LenSub-1 then Exit;
    for j := lenSub - 1 downto 0 do
    if PCharS[i -lenSub+j+1] <> PCharSub[j] then
      break
    else if J=0 then
    begin
      Result:=I-lenSub+2;
      Exit;
    end;
  end;
end;

以上两个函数都是大小写敏感的,可以通过自己修改对比方法。

Tags: posex, posrightex, 函数, 查询

(转)MSSQL查询优化

很不错的一个mssql查询优化的文章 内容丰富 有进行对数据库操作的朋友不要错过 转(Readlog.cn)

» 阅读全文

Tags: mssql, 查询优化, 优化, 查询

delphi 键盘按键代码

在delphi中写到模拟按键的时候需要 知道键盘的key值哦 这里就收藏了所有……

» 阅读全文

Tags: 键盘, 按键, 代码, 伪码, 查询

QQMail里面可以查旧好友Q号

001.gif

大小: 8.96 K
尺寸: 58 x 92
浏览: 512 次
点击打开新窗口浏览全图

这个是我刚发现在qmail里面的旧好久分组记录

002.gif

大小: 5.23 K
尺寸: 49 x 92
浏览: 486 次
点击打开新窗口浏览全图

这个是我的现在的qq里面的分组

------------------

登陆QQmail里面去 然后在右边就可以查询到QQ的旧好友了

在右边的通讯录里面就有列表

 

Tags: qq, email, 查询