Autor Beitrag
Asgar
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 160

XP Home Edition
D5
BeitragVerfasst: Mo 13.06.05 15:21 
Hallo, hab ein problem, will einen string nach einem zeichen durchsuchen, mit dem pos befehl geht das, allerdings sucht er dann anch dem ersten zeichen, ich will aber das er anch dem letzten zeichen davon sucht.
gibts dafür auch irgendeine Funktion?
Becks16
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 405



BeitragVerfasst: Mo 13.06.05 15:24 
wenn ich dich richtig verstanden habe geht das so mit einen SQL befehl

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
// 1. Alle, in denen A an x-beliebiger Steller vorkommet  
ADOQuery1.SQL.Text:= 'select * from film WHERE fname LIKE "%a%" ORDER BY fname';    

 

 
// 2. Alle, bei denen ein A am Ende steht  
ADOQuery1.SQL.Text:= 'select * from film WHERE fname LIKE "%a" ORDER BY fname';


Moderiert von user profile iconraziel: Code- durch Delphi-Tags ersetzt.

_________________
Ich bin Dumm und weiss nichts :-)
Asgar Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 160

XP Home Edition
D5
BeitragVerfasst: Mo 13.06.05 15:28 
das wäre wenn das zeichen am ende steht oder an einer beliebigen stelle, ich will aber die genaue position. angenommen ich habe einen string " test_db001_tmp.php" dann will ich das db001 haben, also das zwischen dem letzten und dem vorletzten "_"
hab dafür auch schon selbst ne lösung eben gefunden; ich zähle einfach rückwärts runter in einer schleife bis das zeichen ein _ ist und dann hab ich ja die position im zähler.
trozdem danke
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Mo 13.06.05 15:33 
das geht ungefähr so
ausblenden Delphi-Quelltext
1:
for i := length(s) downto 1 do if s[i] = meinzeichen then result := copy(s,1,i);					

_________________
es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
in der regel haben diese leute die regel...
JayK
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1013



BeitragVerfasst: Mo 13.06.05 15:46 
user profile iconretnyg hat folgendes geschrieben:
das geht ungefähr so
ausblenden Delphi-Quelltext
1:
for i := length(s) downto 1 do if s[i] = meinzeichen then result := copy(s,1,i);					

:think: klar! Jetzt weiß ich, wie ich das mit den Symbolpfaden aus der Registry mache! (Die haben so'n Komma nach dem Pfad, um dann noch den Index in der Datei abzutrennen) Find ich gut :D
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Mo 13.06.05 15:56 
user profile iconJayK hat folgendes geschrieben:
user profile iconretnyg hat folgendes geschrieben:
das geht ungefähr so
ausblenden Delphi-Quelltext
1:
for i := length(s) downto 1 do if s[i] = meinzeichen then result := copy(s,1,i);					

:think: klar! Jetzt weiß ich, wie ich das mit den Symbolpfaden aus der Registry mache! (Die haben so'n Komma nach dem Pfad, um dann noch den Index in der Datei abzutrennen) Find ich gut :D


dann mach aber lieber noch ein break rein:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
for i := length(s) downto 1 do if s[i] = meinzeichen then begin
  result := copy(s,1,i);
  break;
end;

_________________
es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
in der regel haben diese leute die regel...