2,496
社区成员
发帖
与我相关
我的任务
分享
--更新用户名后面的字母信息,如“ZJ”等信息
Declare @vctel varchar(20)
Declare @vcName varchar(20)
Declare @vcRe varchar(20)
Declare @Leng int
Declare @Temp varchar(2)
Declare Check_Name cursor for select vctel, vcName from userinfo where vcName<>''
Open Check_Name
Fetch Next from Check_Name into @vctel,@vcName
While @@Fetch_Status=0
begin
set @Leng=len(@vcName)
while @Leng>0
begin
set @Temp=substring(@vcName,@Leng,1) --从后往前找
if (ASCII(@Temp) between 65 and 90) or (ASCII(@Temp) between 97 and 122) --大小写字母
begin
set @Temp=''
end
set @vcRe=@Temp+@vcRe
set @Leng=@Leng-1
end
Update userinfo set vcName=@vcRe where current of Check_Name
set @vcRe=''
Fetch Next from Check_Name into @vctel,@vcName
end
Close Check_Name
DealLocate Check_Name
uses
PerlRegEx;
procedure TForm1.btn1Click(Sender: TObject);
var
reg:TPerlRegEx;
begin
reg:=TPerlRegEx.Create(nil);
try
reg.Subject:='张三 abc de 数据';
reg.RegEx:='[a-zA-Z ]' ;
reg.Replacement:='';
reg.ReplaceAll;
Showmessage(reg.Subject);
finally
reg.Free;
end;
end;