AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

String bearbeiten

Ein Thema von bundy · begonnen am 24. Mär 2004 · letzter Beitrag vom 24. Mär 2004
Antwort Antwort
Benutzerbild von bundy
bundy

Registriert seit: 24. Mai 2003
Ort: Eisenstadt
438 Beiträge
 
Delphi 2007 Architect
 
#1

String bearbeiten

  Alt 24. Mär 2004, 16:59
Hallo Leute

Meine Frage :

Ich habe einen Text der sich in einem Memo befindet in einen String geladen, und ich will Zeichen entfernen:

Delphi-Quellcode:
for n:=1 to lenght[s] do
begin
if s[n]=' then s[n]:='_'  <--------FUNKTIONIERT
if s[n]='-then s[n]:=''   <-------------Fehler string and char WARUM ?? (Soll nur gelöscht werden)
end;
+++Glaube keiner Statistik, die du nicht selbst getürkthast.++++
********************
Ein anonymer Statistiker. *
********************
  Mit Zitat antworten Zitat
Benedikt
(Gast)

n/a Beiträge
 
#2

Re: String bearbeiten

  Alt 24. Mär 2004, 17:01
Hi,

benutz doch die Delete-Funktion
  Mit Zitat antworten Zitat
Benutzerbild von bundy
bundy

Registriert seit: 24. Mai 2003
Ort: Eisenstadt
438 Beiträge
 
Delphi 2007 Architect
 
#3

Re: String bearbeiten

  Alt 24. Mär 2004, 17:05
Die wie funktioniert ?
+++Glaube keiner Statistik, die du nicht selbst getürkthast.++++
********************
Ein anonymer Statistiker. *
********************
  Mit Zitat antworten Zitat
Benutzerbild von bundy
bundy

Registriert seit: 24. Mai 2003
Ort: Eisenstadt
438 Beiträge
 
Delphi 2007 Architect
 
#4

Re: String bearbeiten

  Alt 24. Mär 2004, 17:12
kommt schon bitte HILFE
+++Glaube keiner Statistik, die du nicht selbst getürkthast.++++
********************
Ein anonymer Statistiker. *
********************
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#5

Re: String bearbeiten

  Alt 24. Mär 2004, 17:12
Hi!

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var str: string;
begin
str:='Test';
delete(str, 1,2);
showmessage(str); //st
end;
Zitat von OH:
Delphi-Syntax:

procedure Delete(var S: string; Index, Count:Integer);

Beschreibung

In Delphi entfernt Delete, beginnend mit S[Index], Count Zeichen aus dem String S. S ist eine String-Variable. Index und Count sind Integer-Ausdrücke.

Wenn index größer als die Länge von String oder kleiner als 1 ist, werden keine Zeichen gelöscht.

Werden mit Count mehr Zeichen angegeben, als beginnend bei Index im String vorhanden sind, wird der Rest des Strings gelöscht. Wenn Count kleiner oder gleich 0 ist, werden keine Zeichen gelöscht.
Ciao fkerber

Edit: Du pushst nach 7 Minuten???
Frederic Kerber
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: String bearbeiten

  Alt 24. Mär 2004, 17:20
@Bundy:
Das "pushen" eigener Threads nach so kurzer Zeit (mit 7 Minuten dürftest Du trauriger Rekordhalter sein!) ist nicht erwünscht.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von bundy
bundy

Registriert seit: 24. Mai 2003
Ort: Eisenstadt
438 Beiträge
 
Delphi 2007 Architect
 
#7

Re: String bearbeiten

  Alt 24. Mär 2004, 17:20
hy Danke dir
+++Glaube keiner Statistik, die du nicht selbst getürkthast.++++
********************
Ein anonymer Statistiker. *
********************
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#8

Re: String bearbeiten

  Alt 24. Mär 2004, 17:23
Mit "String[Index]" greifst Du nunmal auf einen einzelnen Char aus einer Kette zu, wenn Du nun eine Zuweisung der form "String[Index] :=" machst, erwartet Delphi auf der rechten Seite auch einen Char. Deine zwei Hochkommas, sind aber kein Char, sondern ein leerer String - daher knallt es.
wenn Du nicht delete nutzen möchtes, kannst Du sowas basteln:
Delphi-Quellcode:
function CleanUpString(Value : String;
                       SearchChars : Array of Char;
                       ReplaceChars: Array of Char):String;
var i,j : Integer;
    WasReplaced : Boolean;
begin
  for i:=1 to length(Value) do begin
    WasReplaced := False;
    for j := 0 to High(SearchChars) do begin
      if Value[i] = SearchChars[j] then begin
        WasReplaced := True;
        if ReplaceChars[j] <> #0 then begin
          Result := Result+ReplaceChars[j];
          Break;
        end;
      end;
    end; // for j
    if not WasReplaced then Result := Result+Value[i];
  end; //for i
end;
Anwendung:
Delphi-Quellcode:
var MyString : String;
begin
  MyString := 'Das ist ein Test-String';
  MyString := CleanUpString(MyString,[' ','-'],['_',#0]);
Gruß

[Edit]immer wenn man zu hastig ist...[/Edit]
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:44 Uhr.
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