Entwickler-Ecke

Sonstiges (Delphi) - Zeichenfolge sperren


F.Art - Sa 28.12.02 02:44
Titel: Zeichenfolge sperren
Ich würde gerne einen beliebigen Text sperren lassen egal ob er groß,klein oder gemischt geschrieben ist.


Alibi - Sa 28.12.02 02:51

Wo wie was?


thebe - Sa 28.12.02 02:51

Bitte WAS ?

Wo willste den Text sperren lassen ?


Formulier ma ne anständige Frage womit man was anfangen kann, dann könnte man Dir auch helfen...


chefkoch - Sa 28.12.02 02:56

Probiers hiermit:

Quelltext
1:
 if upcase(edit1.text) = 'HALLO' then blabla                    

dann setzt der den text in edit1 auf NUR GROSSBUCHSTABEN

das mit dem sperren is deine Sache !

cya

chefkoch


matze - Sa 28.12.02 12:21

oder du machst das mit POS !!! die fuktio gibt dir die position eines strings in einem andresn zurück !!! wenn du z.b. nicht willst das hallo in dem string vorkommt, aber der user hallodu eintrippt bringt dir die methode von oben nix.[/code]


chefkoch - Sa 28.12.02 14:34

Machen wir es 'fart' (*lol*) nich so schwer :



Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
function textwegmachfunction(eingabe, auszuschliessen : string) : string;
var hilf : string;
    i    : integer;
begin
     hilf := '';
     ///pos ist caseINsensitive
     if pos(auszuschliessen,eingabe) > 0 then
      begin
        for i := 1 to pos(auszuschliessen,eingabe)-1 do
        hilf := hilf + eingabe[i];
        for i := pos(auszuschliessen,eingabe)+5 to length(eingabe) do
         hilf := hilf + eingabe[i];
      end;
        textwegmachfunction := hilf;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
     edit1.text := textwegmachfunction(edit1.text,'hallo');
end;




Viel Spaß beim anwenden


chefkoch


F.Art - Sa 28.12.02 15:04

Irgendwie funkt das bei mir nicht richtig. Er ersetzt alle wörter.
Ich habe mir noch überlegt das es vieleicht für meine Zwecke besser ist aus einem wort zB Hallöchen nach hall suchen lassen und das er dann sperrt.


chefkoch - Sa 28.12.02 15:07

Sag doch einfach mal, was du eingibst

und was rauskommen soll

Von EVA mach ich dir das V ;)=

C ya

chefkoch


F.Art - Sa 28.12.02 19:41

Ich will einfach nur zB ne eMail Adresse sperren.
zB jederman@gmx.de das er das gmx nicht akzeptiert.


chefkoch - Sa 28.12.02 19:43

hä ?

also aus jedermann@gmx.de


soll jedermann@.de erstellt werden .. oder nur ne message
die sagt.. "nönö .. will ich nich" ??

:?: :?: :?: :?: :?: :?:


F.Art - Sa 28.12.02 19:45

Nur ne Message dies ist nicht möglich und soll natürlich dann zu end springen.


chefkoch - Sa 28.12.02 19:54


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
if pos('gmx.de',edit1.text) = 0 then
     begin
        //Hier kommt der sche*** hin, den er machen soll, wenn "@gmx.de" nich drin is
        messagedlg('is okay !',mtinformation,[mbok],0);
     end
     else
     begin
          messagedlg('GMX stinkt !',mterror,[mbok],0);
          edit1.text := 'GMX stinkt !';
     end;




fertitsch !


chefkoch


F.Art - Sa 28.12.02 20:01

Genau so wollte ich das aber er sollte zwischen groß,klein oder gemischt nicht unterscheiden.

Aber schonmal THX


chefkoch - Sa 28.12.02 20:07

pos ist von hause aus caseINseNsiTive ... Also IsT DAS ÜBEerhaUpt Kein ProBleM ..


F.Art - Sa 28.12.02 20:15

Ich weis ja nicht was du mir sagen wolltest.
Aber das mit groß und klein macht er so nicht.


chefkoch - So 29.12.02 00:34


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
if pos(uppercase('gmx.de'),uppercase(edit1.text)) = 0 then 
     begin 
        //Hier kommt der sche*** hin, den er machen soll, wenn "@gmx.de" nich drin is 
        messagedlg('is okay !',mtinformation,[mbok],0); 
     end 
     else 
     begin 
          messagedlg('GMX stinkt !',mterror,[mbok],0); 
          edit1.text := 'GMX stinkt !'; 
     end;


das sollte gehen


F.Art - So 29.12.02 01:38

Jo THX genau so ist es nach meiner Vorstellung.