返回某个字符串中某个字符串中出现的次数

本文介绍了一种在Delphi中实现字符串查找次数的方法,并提供了一个输入框编辑器的字符验证功能,确保用户只能输入数字及特定符号。适用于Delphi开发者进行字符串处理和用户输入控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// 返回某个字符串中某个字符串中出现的次数}
function TForm1.StrNum(ShortStr:string;LongString:string):Integer;
var
   i:Integer;
begin
   i:=0;
   while pos(ShortStr,LongString)>0 do
      begin
         i:=i+1;
         LongString:=copy(LongString,(pos(ShortStr,LongString))+1,Length(LongString)-pos(ShortStr,LongString))
      end;
   Result:=i;
end; 

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if length(Edit1.Text)=0 then
begin
  if not (Key in['0'..'9','-','.',#27{ESC},#8{退格},#13{回车}]) then
  begin
    key:=#0;
  end;
  if StrNum('.',Edit1.Text)>0 then
  begin
    if not (Key in['0'..'9',#27{ESC},#8{退格},#13{回车}]) then
    begin
      key:=#0;
    end;
  end;
end
else
begin
  if not (Key in['0'..'9','.',#27{ESC},#8{退格},#13{回车}]) then
  begin
    key:=#0;
  end;
  if StrNum('.',Edit1.Text)>0 then
  begin
    if not (Key in['0'..'9',#27{ESC},#8{退格},#13{回车}]) then
    begin
      key:=#0;
    end;
  end;
end;
end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值