比如有字符串:“1.1临时工工资”,现在我想将其中的中文取出来,即“临时工工资”,请问一下该如何做呀?如何判断是否是中文字符?
解决方案 »
- 还是程序全屏问题(怎么测都不行,实在没办法了)
- 客户端使用SOCKETSVR.EXE 连接中间件服务器,只有本机能连上.其他机器均不能连接!服务端没有防火墙!各位大侠救命阿!
- DBGrid中怎么显示记录是在第几行呢?
- 先谢谢大家了!!求源码
- 各位大虾能告诉我类似Tquery倥件的params属性是怎么做的吗
- 20分求DELPHI5里的delforex5.dll文件
- 关于使用Mscomm控件调用AT指令?
- 快速调整delphi源代码的格式,很简单的问题啊,可是我不会!
- 有个网友要嫁给我,怎么办?
- 急!超时问题。
- 微软的一个Bug,没敢放到Windows专区,放咱们Delphi里让大家乐一下吧。
- 我用IDFTP控件,怎样取得下载或上传的进度吗?是在WORKBEGIN中写吗?
var
I: Integer;
begin
Result := '';
for I := 1 to Length(WideString(mStr)) do
if Length(string(WideString(mStr)[I])) >= 2 then
Result := Result + WideString(mStr)[I];
end;//....
begin
Caption := WideFilter('1.1临时工工资');
end;
str:='1.1临时工工资';
for i:=0 to length(str)-1 do
begin
if IsDBCSLeadByte(Byte(Str[i])) then
begin
Str2:=Copy(Str,i,length(str)-i);
end;
end;
var s ,t:string;
i:integer;
begin
s :='1.1临时工工资';
for i:=0 to length(s) do
begin
if (ord(s[i])>127) then t:=t+s[i];
end;
showmessage(t);
end;
SuanAddMiao(算苗) 通过判断字符字节数来区分数字与汉字(若在全角状态下输入则失效),但程序中稍有问题,修改如下:
str:='1.1临时工工资';//失效
str:='1.1临时工工资';//正确
len:=length(str)-1;
for i:=0 to len do
begin
if IsDBCSLeadByte(Byte(Str[i])) then
begin
S:=S+Copy(Str,i,1);
end;
end;
showmessage(S);
len:=length(s);
i:=1;
while true do
begin
if ord(s[i])<128 then
begin
delete(s,i,1);
dec(i);
dec(len);
end;
inc(i);
if i>len then break;
end;
memo1.Lines.Add(s);:)我也是新手,试着写了一下,不知道有没有什么毛病,基本上是实现了,请各位多加指点~~