Autor Beitrag
Jagg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 635



BeitragVerfasst: Do 23.01.03 14:47 
Hallo,Leute !

Ich habe eine Datenbank,dadrin ist das Feld "Name",mit einem Datensatz der heisst "michael " !
Ich will das das Programm überprüft,wenn an der 1 Stelle des Datensatzes (in dem Fall das "m ") ein kleiner Buchstabe steht,das er es durch einen großen Großen Buchstaben (in dem Fall das "M") ersetzt !

Ich habe das mal mit StringReplace versucht :
ausblenden Quelltext
1:
StringReplace [Table1.FieldByName('Name').AsString,LowerCase(Table1.FieldByName('Name').AsString),UpperCase(Table1.FieldByName('Name').AsString),[rfReplaceAll,rfIgnoreCase]					


Hierbei wandelt er kleine Buchstaben in große Buchstaben um,aber er wandelt das ganze Wort um,ich will aber nur das er den 1 Buchstaben umwandelt !

Wie mach ich das ???

Jagg !
smiegel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 992
Erhaltene Danke: 1

WIN 7
D7 Prof., C#, RAD XE Prof.
BeitragVerfasst: Do 23.01.03 14:53 
Hallo,

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
var s:String;
...
with Table1 do
begin
  while not Eof do
  begin
    Edit;
    s:=FieldByName('Name').AsString;
    s[1]:=AnsiUpperCase(s[1]);
    FieldByName('Name').AsString:=s;
    Post;
    Next;
  end; // while
end; // with

_________________
Gruß Smiegel
Ich weiß, daß ich nichts weiß, aber ich weiß mehr als die, die nicht wissen, daß sie nichts wissen. (Sokrates)
Jagg Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 635



BeitragVerfasst: Do 23.01.03 14:58 
yo danke wenn es nicht klappt schreib ich nochmal rein ;)
Popov
Gast
Erhaltene Danke: 1



BeitragVerfasst: Do 23.01.03 16:44 
Nicht so schnell.

Bei soeiner Aktion sollte man vorher prüfen ob der String überhaupt Text hat. Wenn nicht, dann gibt es eine schöne Fehlermeldung. S[1] ist kein String, sondern ein Char. Und ein Char hat immer ein Zeichen.

ausblenden Quelltext
1:
2:
3:
4:
    ...
    s:=FieldByName('Name').AsString; 
    if Length(s) < 1 then Exit; // <<< Wichtig
    ...