| 
| Autor | Beitrag |  
| Kralle 
          Beiträge: 65
 
 Windows XP,Win7
 Delphi 6, Turbo Delphi Pro, Delphi 7 Enterprise, Delphi XE2 Lazarus
 
 | 
Verfasst: Do 21.07.11 21:47 
 
Hallo,
 pos('1','"1,2,3"') >0 ist true genauso wie pos('1','"11,2,3"'), denn 11 enthält ja auch eine 1.
 
 Gibt es eine Pascal bzw Delphi-Funktion für die 1 <> 11 ist?
 
 Gruß Heiko
 |  |  |  
| Luckie Ehemaliges Mitglied
 Erhaltene Danke: 1
 
 
 
 
 | 
Verfasst: Do 21.07.11 22:02 
 Für diesen Beitrag haben gedankt: Kralle
 |  |  |  
| BenBE 
          Beiträge: 8721
 Erhaltene Danke: 191
 
 Win95, Win98SE, Win2K, WinXP
 D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
 
 | 
Verfasst: Do 21.07.11 22:23 
 
		                       Delphi-Quelltext 
 									| 1:
 | Pos(',1,', ','+SuchString+',');					 | _________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
 Für diesen Beitrag haben gedankt: Kralle
 |  |  |  
| Kralle  
          Beiträge: 65
 
 Windows XP,Win7
 Delphi 6, Turbo Delphi Pro, Delphi 7 Enterprise, Delphi XE2 Lazarus
 
 | 
Verfasst: Fr 22.07.11 05:56 
 
Moin,
 	  |  BenBE hat folgendes geschrieben  : |  	  | 		                       Delphi-Quelltext 
 									| 1:
 | Pos(',1,', ','+SuchString+',');					 |  | 
 das funktioniert aber nicht für die erste und letzte Zahl, weil der Suchstring   ist und so die erste Abfrage so aussieht pos(',1,',',"11,2,3",')  und ,1, nicht ,"1, ist.
 Ich weiß ich habe in meinem Beispiel Zahlen benutzt, aber auch bei Texten gebe es das Problem.
 Z.B. pos(',ab,',',"ab,und,zu",') Gruß Heiko |  |  |  
| Gausi 
          Beiträge: 8550
 Erhaltene Danke: 478
 
 Windows 7, Windows 10
 D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
 
 | 
Verfasst: Fr 22.07.11 06:44 
 
Spiel mal ein bißchen mit TStringlist und deren Eigenschaft CommaText rum, z.B. so:
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 
 | sl := TStringList.Create;try
 sl.CommaText := DeinStringMitKommasDrin;
 for i := 0 to sl.Count-1 do
 if sl[i] = SuchString then
 begin
 showMessage('Suchstring gefunden');
 break;
 end;
 finally
 sl.free;
 end;
 | _________________ We are, we were and will not be.
 Für diesen Beitrag haben gedankt: Kralle
 |  |  |  
| HenryHux 
          Beiträge: 542
 Erhaltene Danke: 33
 
 Windows 7 Premium
 Delphi XE, Eclipse
 
 | 
Verfasst: Fr 22.07.11 07:33 
 
Wieso holst du dir nicht das Pos Ergebnis und überprüfst dann pos-1 und pos+1?
 lg
 Für diesen Beitrag haben gedankt: Kralle
 |  |  |  
| Kralle  
          Beiträge: 65
 
 Windows XP,Win7
 Delphi 6, Turbo Delphi Pro, Delphi 7 Enterprise, Delphi XE2 Lazarus
 
 | 
Verfasst: Fr 22.07.11 08:31 
 
Hallo,
 	  |  HenryHux hat folgendes geschrieben  : |  	  | Wieso holst du dir nicht das Pos Ergebnis und überprüfst dann pos-1 und pos+1? 
 lg
 | 
 An so einer Lösung war ich jetzt grade am basteln (hätte eine Funktion werden sollen).
 Gruß Heiko |  |  |  
| Kralle  
          Beiträge: 65
 
 Windows XP,Win7
 Delphi 6, Turbo Delphi Pro, Delphi 7 Enterprise, Delphi XE2 Lazarus
 
 | 
Verfasst: Fr 22.07.11 08:35 
 
Hallo Gausi,
 	  |  Gausi hat folgendes geschrieben  : |  	  | Spiel mal ein bißchen mit TStringlist und deren Eigenschaft CommaText rum, z.B. so: 
 | 
 Ehrlich gesagt, war mir "CommaText" kein Begriff.
 Ich habe jetzt Deine Lösung etwas überarbeitet:
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 18:
 19:
 20:
 21:
 22:
 23:
 24:
 
 | function cpos(searchstring,text:string):integer;var
 i: integer;     tmplist: TStringList;   begin
 tmplist := TStringList.Create;
 try
 tmplist.CommaText := text;         i:=0;
 while i < tmplist.Count do
 begin
 if tmplist[i] = searchstring then              Begin
 Result:=i+1;
 i:= tmplist.Count;               End
 else                       Result:=-1;
 inc(i);
 end;
 finally
 tmplist.free;
 end;
 end;
 |  Danke, für den Schubs in die richtige Richtung.
 Gruß Heiko
 P.S. Unter Deinem Namen steht: "Erhaltene Danke:", wie "Bedankt" man sich? Sehe keinen Button dafür. |  |  |  
| Gausi 
          Beiträge: 8550
 Erhaltene Danke: 478
 
 Windows 7, Windows 10
 D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
 
 | 
Verfasst: Fr 22.07.11 08:49 
 
Oh, da ist wohl jemand absolut gegen Breaks, was?    Der Danke-Button ist der Button mit dem Daumen-Hoch-Smilie links unten an jedem Beitrag._________________ We are, we were and will not be.
 Für diesen Beitrag haben gedankt: Kralle
 |  |  |  
| Horschdware 
          Beiträge: 744
 Erhaltene Danke: 54
 
 Win XP Pro, Win 7 Pro x64
 Delphi 7, Delphi XE, C++ Builder 5, SAP R/3
 
 | 
Verfasst: Fr 22.07.11 10:27 
 
Eigentlich ist das ja ein tolles Beispiel für die Anwendung regulärer Ausdrücke.
 		                       Delphi-Quelltext 
  würde mir da spontan in den Sinn kommen._________________Delphi: XE -  OS: Windows 7 Professional x64 Für diesen Beitrag haben gedankt: Kralle
 |  |  |  |