如何将将一个字符串中标点符号全部删除

JohnHeung 2005-03-01 05:00:34
比如一个字符串为:HA,N.G?Z4343HO
如何将标点删除只剩下字母和数字?
望赐教!
...全文
423 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ly_liuyang 2005-03-01
  • 打赏
  • 举报
回复
用StringReplace处理就最简单的

http://lysoft.7u7.net
darkliu 2005-03-01
  • 打赏
  • 举报
回复
定义数组,将标点都列出,循环判断,不是标点Str:=str+S[I];

for I:=1 to Length(S) do
for j:=0 to x do
.....
JohnHeung 2005-03-01
  • 打赏
  • 举报
回复
如果字符串中包含汉字又如何处理?
zzlazio 2005-03-01
  • 打赏
  • 举报
回复
var
S:string;
I:Integer;
str:string;
begin
S:='HA,N.G?Z4343HO';
str:='';
for I:=1 to Length(S) do
begin
if ( S[I] in ['0'..'9','A'..'Z','a'..'z']) then
Str:=str+S[I];
end;
showmessage(Str);
end;
海天候 2005-03-01
  • 打赏
  • 举报
回复
var
s:string;
i:integer;
fstr:string;
begin
s:='HA,N.G?Z4343HO';
fstr:='';

for i:=0 to length(s)-1 do
begin
if s[i]<>'.' then
fstr:=fstr+s[i];
end;

showmessage('result '+fstr);
end;
fyje 2005-03-01
  • 打赏
  • 举报
回复
判断字符串的字符Ascii码,如果不是字母和数字删掉就可以了
chinaandys 2005-03-01
  • 打赏
  • 举报
回复
procedure TForm1.Button2Click(Sender: TObject);
var
S:string;
I:Integer;
str:string;
begin
S:='HA,N.G?Z4343HO';
str:='';
for I:=1 to Length(S) do
begin
if ( S[I] in ['0'..'9','A'..'Z','a'..'z']) then
Str:=str+S[I];
end;
showmessage(Str);
end;

16,749

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧