Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wie oft ist ein Zeichen in einem String (https://www.delphipraxis.net/85075-wie-oft-ist-ein-zeichen-einem-string.html)

uplink 25. Jan 2007 15:52


Wie oft ist ein Zeichen in einem String
 
Hallöle,

wollt mal wissen ob es eine Funktion gibt, dir mir sagt wie oft ein Zeichen in einem String vorkommt?
mfg Uplink

mkinzler 25. Jan 2007 15:56

Re: Wie oft ist ein Zeichen in einem String
 
Stndardmäßig glaube nicht, kann aber mit pos/posex leicht selbst geschrieben werden.

Muetze1 25. Jan 2007 15:57

Re: Wie oft ist ein Zeichen in einem String
 
Delphi-Quellcode:
Function CountChar(Const AString: String; Const AChar: Char): Integer;
Var
  lStr: PChar;
Begin
  Result := 0;

  lStr := PChar(AString);

  If Assigned(lStr) Then
  Begin
    While ( lStr^ <> #0 ) Do
    Begin
      If lStr^ = AChar Then
        Inc(Result);

      Inc(lStr);
    End;
  End;  
End;

Nils_13 25. Jan 2007 15:58

Re: Wie oft ist ein Zeichen in einem String
 
Delphi-Quellcode:
function bla(s : String; z : String) : Integer;
var i : Integer;
begin
  Result := 0;
  for i := 1 to Length(s) do
  begin
    if s[i] = z then
      inc(Result);
  end;
end;

procedure TfrmMain.Button1Click(Sender: TObject);
begin
  bla('asbsdddds', 'd');
end;
Mist zu spät...

cruiser 25. Jan 2007 15:58

Re: Wie oft ist ein Zeichen in einem String
 
Delphi-Quellcode:
function CountSubStr(SubStr, Str: string): integer;
begin
  Result := 0;
  while pos(SubStr, Str) > 0 do
  begin
    Result := Result + 1;
    Str := Copy(Str, Pos(SubStr, Str) + Length(SubStr), Length(Str));
  end;
end;

uplink 25. Jan 2007 15:59

Re: Wie oft ist ein Zeichen in einem String
 
Ok thx @all, jetz hab ich ja ne Auswahl :)
Danke an euch, dass es so schnell ging.
Mfg Uplink.

dominikkv 25. Jan 2007 16:00

Re: Wie oft ist ein Zeichen in einem String
 
oder so:
Delphi-Quellcode:
function Zeichen(const s: String; const z: Char): Integer;
var
  I: Integer;
begin
result := 0;
for I := 1 to length(s) do
  if s[i] = z then inc(result);
end;

Muetze1 25. Jan 2007 16:01

Re: Wie oft ist ein Zeichen in einem String
 
Da würde ich glatt mal frech fragen: wer hat die schnellste?

xZise 25. Jan 2007 16:04

Re: Wie oft ist ein Zeichen in einem String
 
Zitat:

Zitat von dominikkv
oder so:
Delphi-Quellcode:
function Zeichen(const s: String; const z: Char): Integer;
var
  I: Integer;
begin
result := 0;
for I := 1 to length(s) do
  if s[i] = z then inc(result);
end;

Gabs schonmal:

Zitat:

Zitat von Nils_13
Delphi-Quellcode:
function bla(s : String; z : String) : Integer;
var i : Integer;
begin
  Result := 0;
  for i := 1 to Length(s) do
  begin
    if s[i] = z then
      inc(Result);
  end;
end;

Wer es nicht sieht, einfach Umstellen (Gleicher Code nur andere Formatierung!!!):
Delphi-Quellcode:
function Zeichen(const s: String; const z: Char): Integer;
var
  I: Integer;
begin
  result := 0; // Tab
  for I := 1 to length(s) do // Tab
  // kein Begin, aber irrelevant
    if s[i] = z then  // Tab & umgebrochen!
      inc(result); // Umgebrochen
  // ein end, aber irrelevant
end;
Obwohl die inrementiertung doch eigentlich schneller gehen könnte ... Oder nicht (x := x + 1)?

Nils_13 25. Jan 2007 16:06

Re: Wie oft ist ein Zeichen in einem String
 
Wo gab es den schonmal ? Vlt. in einem anderen Thread, aber ich habe doch schneller gepostet :P


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:56 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz