数値または文字を削除[Delphi]
数値または文字の削除例
String変数値から数値または文字を選択して削除する簡単な方法の例
コードソース:Stack Overflow
数値のみ削除
function RemoveDecimal(const aString: string): string;
var
C:Char; Index:Integer;
begin
Result := '';
SetLength(Result, Length(aString));
Index := 1;
for C in aString do
begin
if not CharInSet(C, ['0' .. '9']) then
begin
Result[Index] := C;
Inc(Index);
end;
end;
SetLength(Result, Index-1);
end;
function RemoveDecimal(const aString: string): string;
var
C:Char; Index:Integer;
begin
Result := '';
SetLength(Result, Length(aString));
Index := 1;
for C in aString do
begin
if not CharInSet(C, ['0' .. '9']) then
begin
Result[Index] := C;
Inc(Index);
end;
end;
SetLength(Result, Index-1);
end;
文字のみ削除
上記のサンプルコードで条件が逆の場合、数値ではなく文字のみを削除できます.
procedure RemoveChar(var s: string);
var
i, j: Integer;
pc: PChar;
begin
j := 0;
pc := PChar(@s[1]);
for i := 0 to Length(s) - 1 do
begin
if not (pc[i] in ['0'..'9']) then
Inc(j)
else
pc[i - j] := pc[i];
end;
SetLength(s, Length(s) - j);
end;
var
タイプであるため、procedure
として実装される.Reference
この問題について(数値または文字を削除[Delphi]), 我々は、より多くの情報をここで見つけました https://velog.io/@zooxop/Delphi-숫자-or-문자-제거하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol